gossiperl_client 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- OTVkOTY2ZjdjOWZlMGY4N2ZiNmMwMGM3ZTczNDM1NjM3OGRjYTllNA==
4
+ YmQ1NjZiZTBiOTY2NzdhMzBiMDkwZDNiM2M1NGNjNzQ0OTMzOGI4YQ==
5
5
  data.tar.gz: !binary |-
6
- M2MyNTcyYmYwOGE4NDIyMmNjYWRlZDY2MTM1NmZmMDFmMGExNDdiOA==
6
+ OGIyN2VlMGM3Y2M0MzBjNjI1ODJmYTQxMWNiZTVmYWFkY2NjYzk0YQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MDZmMGQzNGUyODk5NTlkZTQzNzY0YTU3MDQwOTcxMTc0NGI1MGUwOWY3MWFj
10
- ZTlkODRkMjI5M2QwNWZhOWMyMWRlOGFmMmM1YWRkZjQ0YmYwZGRkOWU0ZDU2
11
- MzczYTA2ZWNkZWQ5ZjJkYjZlNmZiZGUzNzgyN2ZkNGYxYzRmMGI=
9
+ YmE5MjQ5YzBhZWNhZmIwYTkyMTIxY2Q0MjljNjY2NTZlOWQ5NzUzOGMyNDVh
10
+ NWRiYzQzMWE4MTUzNTU4YWM1ZWZkYjgzMGVkYmFkYWQ2ZTIxZTQ3YzdmNDZl
11
+ NTFiM2Y2MWE2M2RjYTk3Mzg1MzVhMDFjMzdiZmZlYzJjMTBjZGU=
12
12
  data.tar.gz: !binary |-
13
- NjRiZDlmODlkNjhmOTQ5ZjM2MjVjNjE3OTRjZWM3MTIxYmI3ZGIwMjM1N2I5
14
- MjliMWYyOWNlZjJkNDY4YzM3MWEzZTFjMTJiODBkMWIzMzNlMTRhMjQ2Mjhi
15
- OTJiMzEyYjM3Y2M4MTU4YzM4YzI0M2U4OGE3YjhmM2YwNjgwMTA=
13
+ MjcyNzgxYjNiZjFhZjA5N2Y3MTBmYzE5YzE5NjQ5MmUzMTVmMWQzZWI5MDNl
14
+ MmJhYzU3MjMxODIxYjBiMGFiZDk5YzM1NWVmNGQ0N2IxMGYwZDgzZjI2Yzc1
15
+ MjUwMTFmNDlmMTJlNzVlNTA3ZmU5ZDFjNDFmYjNiNzdkY2NlZGI=
data/README.md CHANGED
@@ -103,10 +103,8 @@ Or in a block:
103
103
  :property => { :value => <value>, :type => <thrift-type-as-string>, :field_id => <field-order> }
104
104
  } )
105
105
 
106
- Where `:type` is one of the Thrift types:
106
+ Where `:type` is one of the supported Thrift types:
107
107
 
108
- - `:stop`
109
- - `:void`
110
108
  - `:bool`
111
109
  - `:byte`
112
110
  - `:double`
@@ -114,10 +112,6 @@ Where `:type` is one of the Thrift types:
114
112
  - `:i32`
115
113
  - `:i64`
116
114
  - `:string`
117
- - `:struct`
118
- - `:map`
119
- - `:set`
120
- - `:list`
121
115
 
122
116
  And `:field_id` is a Thrift field ID.
123
117
 
@@ -64,8 +64,16 @@ module Gossiperl
64
64
  end
65
65
 
66
66
  def send digest_type, digest_data
67
- serialized = self.messaging.transport.serializer.serialize_arbitrary( digest_type, digest_data )
68
- self.messaging.send serialized
67
+ begin
68
+ serialized = self.messaging.transport.serializer.serialize_arbitrary( digest_type, digest_data )
69
+ self.messaging.send serialized
70
+ rescue ArgumentError => e
71
+ process_event( { :event => :failed,
72
+ :error => { :serialize_arbitrary => e } } )
73
+ rescue StandardError => e2
74
+ process_event( { :event => :failed,
75
+ :error => { :serialize_arbitrary => e2 } } )
76
+ end
69
77
  end
70
78
 
71
79
  end
@@ -5,7 +5,6 @@ module Gossiperl
5
5
  module Client
6
6
  module Serialization
7
7
  class Serializer
8
- include ::Thrift::Struct_Union
9
8
 
10
9
  def serialize_arbitrary digest_type, digest_data
11
10
  transport = ::Thrift::MemoryBufferTransport.new()
@@ -14,14 +13,10 @@ module Gossiperl
14
13
  digest_data.each_key{|key|
15
14
  value = digest_data[key][:value]
16
15
  type = self.type_to_thrift_type( digest_data[key][:type] )
17
- unless value.nil?
18
- if is_container? type
19
- protocol.write_field_begin(key.to_s, digest_data[key][:value], digest_data[key][:field_id])
20
- write_container( protocol, value, { :type => type, :name => key.to_s } )
21
- protocol.write_field_end
22
- else
23
- protocol.write_field({ :type => type, :name => key.to_s }, digest_data[key][:field_id], value )
24
- end
16
+ unless type.nil?
17
+ protocol.write_field({ :type => type, :name => key.to_s }, digest_data[key][:field_id], value )
18
+ else
19
+ raise ArgumentError.new("Unsupported serializable type #{digest_data[key][:type]} for field #{key.to_s}.")
25
20
  end
26
21
  }
27
22
  protocol.write_field_stop
@@ -108,21 +103,17 @@ module Gossiperl
108
103
  end
109
104
 
110
105
  def type_to_thrift_type type
111
- return ({
112
- :stop => ::Thrift::Types::STOP,
113
- :void => ::Thrift::Types::VOID,
106
+ type = type.to_sym
107
+ serializable_thrift_types = {
114
108
  :bool => ::Thrift::Types::BOOL,
115
109
  :byte => ::Thrift::Types::BYTE,
116
110
  :double => ::Thrift::Types::DOUBLE,
117
111
  :i16 => ::Thrift::Types::I16,
118
112
  :i32 => ::Thrift::Types::I32,
119
113
  :i64 => ::Thrift::Types::I64,
120
- :string => ::Thrift::Types::STRING,
121
- :struct => ::Thrift::Types::STRUCT,
122
- :map => ::Thrift::Types::MAP,
123
- :set => ::Thrift::Types::SET,
124
- :list => ::Thrift::Types::LIST,
125
- })[ type.to_sym ]
114
+ :string => ::Thrift::Types::STRING }
115
+ return (serializable_thrift_types)[ type ] if serializable_thrift_types.has_key? type
116
+ return nil
126
117
  end
127
118
 
128
119
  end
@@ -2,7 +2,7 @@
2
2
  module Gossiperl
3
3
  module Client
4
4
  module Version
5
- VERSION = '0.2.0'
5
+ VERSION = '0.2.1'
6
6
  MAJOR, MINOR, TINY = VERSION.split('.')
7
7
  end
8
8
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: !binary |-
3
3
  Z29zc2lwZXJsX2NsaWVudA==
4
4
  version: !ruby/object:Gem::Version
5
- version: 0.2.0
5
+ version: 0.2.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - !binary |-
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-12-20 00:00:00.000000000 Z
13
+ date: 2014-12-22 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: !binary |-