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 +8 -8
- data/README.md +1 -7
- data/lib/gossiperl_client/overlay_worker.rb +10 -2
- data/lib/gossiperl_client/serialization/serializer.rb +9 -18
- data/lib/gossiperl_client/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YmQ1NjZiZTBiOTY2NzdhMzBiMDkwZDNiM2M1NGNjNzQ0OTMzOGI4YQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
OGIyN2VlMGM3Y2M0MzBjNjI1ODJmYTQxMWNiZTVmYWFkY2NjYzk0YQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YmE5MjQ5YzBhZWNhZmIwYTkyMTIxY2Q0MjljNjY2NTZlOWQ5NzUzOGMyNDVh
|
10
|
+
NWRiYzQzMWE4MTUzNTU4YWM1ZWZkYjgzMGVkYmFkYWQ2ZTIxZTQ3YzdmNDZl
|
11
|
+
NTFiM2Y2MWE2M2RjYTk3Mzg1MzVhMDFjMzdiZmZlYzJjMTBjZGU=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
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
|
-
|
68
|
-
|
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
|
18
|
-
|
19
|
-
|
20
|
-
|
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
|
-
|
112
|
-
|
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
|
-
|
122
|
-
|
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
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: !binary |-
|
3
3
|
Z29zc2lwZXJsX2NsaWVudA==
|
4
4
|
version: !ruby/object:Gem::Version
|
5
|
-
version: 0.2.
|
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-
|
13
|
+
date: 2014-12-22 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: !binary |-
|