1#!/usr/bin/env python
2# Generated by the protocol buffer compiler.  DO NOT EDIT!
3# source: third_party/py/appengine_mapreduce/src/kv.proto
4
5from google.net.proto import ProtocolBuffer
6import array
7import base64
8import thread
9try:
10  from google.net.proto import _net_proto___parse__python
11except ImportError:
12  _net_proto___parse__python = None
13
14__pychecker__ = """maxreturns=0 maxbranches=0 no-callinit
15                   unusednames=printElemNumber,debug_strs no-special"""
16
17if hasattr(ProtocolBuffer, 'ExtendableProtocolMessage'):
18  _extension_runtime = True
19  _ExtendableProtocolMessage = ProtocolBuffer.ExtendableProtocolMessage
20else:
21  _extension_runtime = False
22  _ExtendableProtocolMessage = ProtocolBuffer.ProtocolMessage
23
24class KeyValue(ProtocolBuffer.ProtocolMessage):
25  has_key_ = 0
26  key_ = ""
27  has_value_ = 0
28  value_ = ""
29
30  def __init__(self, contents=None):
31    if contents is not None: self.MergeFromString(contents)
32
33  def key(self): return self.key_
34
35  def set_key(self, x):
36    self.has_key_ = 1
37    self.key_ = x
38
39  def clear_key(self):
40    if self.has_key_:
41      self.has_key_ = 0
42      self.key_ = ""
43
44  def has_key(self): return self.has_key_
45
46  def value(self): return self.value_
47
48  def set_value(self, x):
49    self.has_value_ = 1
50    self.value_ = x
51
52  def clear_value(self):
53    if self.has_value_:
54      self.has_value_ = 0
55      self.value_ = ""
56
57  def has_value(self): return self.has_value_
58
59
60  def MergeFrom(self, x):
61    assert x is not self
62    if (x.has_key()): self.set_key(x.key())
63    if (x.has_value()): self.set_value(x.value())
64
65  if _net_proto___parse__python is not None:
66    def _CMergeFromString(self, s):
67      _net_proto___parse__python.MergeFromString(self, 'KeyValue', s)
68
69  if _net_proto___parse__python is not None:
70    def _CEncode(self):
71      return _net_proto___parse__python.Encode(self, 'KeyValue')
72
73  if _net_proto___parse__python is not None:
74    def _CEncodePartial(self):
75      return _net_proto___parse__python.EncodePartial(self, 'KeyValue')
76
77  if _net_proto___parse__python is not None:
78    def _CToASCII(self, output_format):
79      return _net_proto___parse__python.ToASCII(self, 'KeyValue', output_format)
80
81
82  if _net_proto___parse__python is not None:
83    def ParseASCII(self, s):
84      _net_proto___parse__python.ParseASCII(self, 'KeyValue', s)
85
86
87  if _net_proto___parse__python is not None:
88    def ParseASCIIIgnoreUnknown(self, s):
89      _net_proto___parse__python.ParseASCIIIgnoreUnknown(self, 'KeyValue', s)
90
91
92  def Equals(self, x):
93    if x is self: return 1
94    if self.has_key_ != x.has_key_: return 0
95    if self.has_key_ and self.key_ != x.key_: return 0
96    if self.has_value_ != x.has_value_: return 0
97    if self.has_value_ and self.value_ != x.value_: return 0
98    return 1
99
100  def IsInitialized(self, debug_strs=None):
101    initialized = 1
102    if (not self.has_key_):
103      initialized = 0
104      if debug_strs is not None:
105        debug_strs.append('Required field: key not set.')
106    if (not self.has_value_):
107      initialized = 0
108      if debug_strs is not None:
109        debug_strs.append('Required field: value not set.')
110    return initialized
111
112  def ByteSize(self):
113    n = 0
114    n += self.lengthString(len(self.key_))
115    n += self.lengthString(len(self.value_))
116    return n + 2
117
118  def ByteSizePartial(self):
119    n = 0
120    if (self.has_key_):
121      n += 1
122      n += self.lengthString(len(self.key_))
123    if (self.has_value_):
124      n += 1
125      n += self.lengthString(len(self.value_))
126    return n
127
128  def Clear(self):
129    self.clear_key()
130    self.clear_value()
131
132  def OutputUnchecked(self, out):
133    out.putVarInt32(10)
134    out.putPrefixedString(self.key_)
135    out.putVarInt32(18)
136    out.putPrefixedString(self.value_)
137
138  def OutputPartial(self, out):
139    if (self.has_key_):
140      out.putVarInt32(10)
141      out.putPrefixedString(self.key_)
142    if (self.has_value_):
143      out.putVarInt32(18)
144      out.putPrefixedString(self.value_)
145
146  def TryMerge(self, d):
147    while d.avail() > 0:
148      tt = d.getVarInt32()
149      if tt == 10:
150        self.set_key(d.getPrefixedString())
151        continue
152      if tt == 18:
153        self.set_value(d.getPrefixedString())
154        continue
155      # tag 0 is special: it's used to indicate an error.
156      # so if we see it we raise an exception.
157      if (tt == 0): raise ProtocolBuffer.ProtocolBufferDecodeError
158      d.skipData(tt)
159
160
161  def __str__(self, prefix="", printElemNumber=0):
162    res=""
163    if self.has_key_: res+=prefix+("key: %s\n" % self.DebugFormatString(self.key_))
164    if self.has_value_: res+=prefix+("value: %s\n" % self.DebugFormatString(self.value_))
165    return res
166
167
168  def _BuildTagLookupTable(sparse, maxtag, default=None):
169    return tuple([sparse.get(i, default) for i in xrange(0, 1+maxtag)])
170
171  kkey = 1
172  kvalue = 2
173
174  _TEXT = _BuildTagLookupTable({
175    0: "ErrorCode",
176    1: "key",
177    2: "value",
178  }, 2)
179
180  _TYPES = _BuildTagLookupTable({
181    0: ProtocolBuffer.Encoder.NUMERIC,
182    1: ProtocolBuffer.Encoder.STRING,
183    2: ProtocolBuffer.Encoder.STRING,
184  }, 2, ProtocolBuffer.Encoder.MAX_TYPE)
185
186  # stylesheet for XML output
187  _STYLE = \
188   """"""
189  _STYLE_CONTENT_TYPE = \
190   """"""
191  _PROTO_DESCRIPTOR_NAME = 'KeyValue'
192  _SERIALIZED_DESCRIPTOR = array.array('B')
193  _SERIALIZED_DESCRIPTOR.fromstring(base64.decodestring("Wi90aGlyZF9wYXJ0eS9weS9hcHBlbmdpbmVfbWFwcmVkdWNlL3NyYy9rdi5wcm90bwoIS2V5VmFsdWUTGgNrZXkgASgCMAk4AqMBqgEFY3R5cGWyAQRDb3JkpAEUExoFdmFsdWUgAigCMAk4AqMBqgEFY3R5cGWyAQRDb3JkpAEUugGWAQovdGhpcmRfcGFydHkvcHkvYXBwZW5naW5lX21hcHJlZHVjZS9zcmMva3YucHJvdG8iLgoIS2V5VmFsdWUSDwoDa2V5GAEgAigMQgIIARIRCgV2YWx1ZRgCIAIoDEICCAEiLwoJS2V5VmFsdWVzEg8KA2tleRgBIAIoDEICCAESEQoFdmFsdWUYAiADKAxCAggBQgIgAQ=="))
194  if _net_proto___parse__python is not None:
195    _net_proto___parse__python.RegisterType(
196        _SERIALIZED_DESCRIPTOR.tostring())
197
198class KeyValues(ProtocolBuffer.ProtocolMessage):
199  has_key_ = 0
200  key_ = ""
201
202  def __init__(self, contents=None):
203    self.value_ = []
204    if contents is not None: self.MergeFromString(contents)
205
206  def key(self): return self.key_
207
208  def set_key(self, x):
209    self.has_key_ = 1
210    self.key_ = x
211
212  def clear_key(self):
213    if self.has_key_:
214      self.has_key_ = 0
215      self.key_ = ""
216
217  def has_key(self): return self.has_key_
218
219  def value_size(self): return len(self.value_)
220  def value_list(self): return self.value_
221
222  def value(self, i):
223    return self.value_[i]
224
225  def set_value(self, i, x):
226    self.value_[i] = x
227
228  def add_value(self, x):
229    self.value_.append(x)
230
231  def clear_value(self):
232    self.value_ = []
233
234
235  def MergeFrom(self, x):
236    assert x is not self
237    if (x.has_key()): self.set_key(x.key())
238    for i in xrange(x.value_size()): self.add_value(x.value(i))
239
240  if _net_proto___parse__python is not None:
241    def _CMergeFromString(self, s):
242      _net_proto___parse__python.MergeFromString(self, 'KeyValues', s)
243
244  if _net_proto___parse__python is not None:
245    def _CEncode(self):
246      return _net_proto___parse__python.Encode(self, 'KeyValues')
247
248  if _net_proto___parse__python is not None:
249    def _CEncodePartial(self):
250      return _net_proto___parse__python.EncodePartial(self, 'KeyValues')
251
252  if _net_proto___parse__python is not None:
253    def _CToASCII(self, output_format):
254      return _net_proto___parse__python.ToASCII(self, 'KeyValues', output_format)
255
256
257  if _net_proto___parse__python is not None:
258    def ParseASCII(self, s):
259      _net_proto___parse__python.ParseASCII(self, 'KeyValues', s)
260
261
262  if _net_proto___parse__python is not None:
263    def ParseASCIIIgnoreUnknown(self, s):
264      _net_proto___parse__python.ParseASCIIIgnoreUnknown(self, 'KeyValues', s)
265
266
267  def Equals(self, x):
268    if x is self: return 1
269    if self.has_key_ != x.has_key_: return 0
270    if self.has_key_ and self.key_ != x.key_: return 0
271    if len(self.value_) != len(x.value_): return 0
272    for e1, e2 in zip(self.value_, x.value_):
273      if e1 != e2: return 0
274    return 1
275
276  def IsInitialized(self, debug_strs=None):
277    initialized = 1
278    if (not self.has_key_):
279      initialized = 0
280      if debug_strs is not None:
281        debug_strs.append('Required field: key not set.')
282    return initialized
283
284  def ByteSize(self):
285    n = 0
286    n += self.lengthString(len(self.key_))
287    n += 1 * len(self.value_)
288    for i in xrange(len(self.value_)): n += self.lengthString(len(self.value_[i]))
289    return n + 1
290
291  def ByteSizePartial(self):
292    n = 0
293    if (self.has_key_):
294      n += 1
295      n += self.lengthString(len(self.key_))
296    n += 1 * len(self.value_)
297    for i in xrange(len(self.value_)): n += self.lengthString(len(self.value_[i]))
298    return n
299
300  def Clear(self):
301    self.clear_key()
302    self.clear_value()
303
304  def OutputUnchecked(self, out):
305    out.putVarInt32(10)
306    out.putPrefixedString(self.key_)
307    for i in xrange(len(self.value_)):
308      out.putVarInt32(18)
309      out.putPrefixedString(self.value_[i])
310
311  def OutputPartial(self, out):
312    if (self.has_key_):
313      out.putVarInt32(10)
314      out.putPrefixedString(self.key_)
315    for i in xrange(len(self.value_)):
316      out.putVarInt32(18)
317      out.putPrefixedString(self.value_[i])
318
319  def TryMerge(self, d):
320    while d.avail() > 0:
321      tt = d.getVarInt32()
322      if tt == 10:
323        self.set_key(d.getPrefixedString())
324        continue
325      if tt == 18:
326        self.add_value(d.getPrefixedString())
327        continue
328      # tag 0 is special: it's used to indicate an error.
329      # so if we see it we raise an exception.
330      if (tt == 0): raise ProtocolBuffer.ProtocolBufferDecodeError
331      d.skipData(tt)
332
333
334  def __str__(self, prefix="", printElemNumber=0):
335    res=""
336    if self.has_key_: res+=prefix+("key: %s\n" % self.DebugFormatString(self.key_))
337    cnt=0
338    for e in self.value_:
339      elm=""
340      if printElemNumber: elm="(%d)" % cnt
341      res+=prefix+("value%s: %s\n" % (elm, self.DebugFormatString(e)))
342      cnt+=1
343    return res
344
345
346  def _BuildTagLookupTable(sparse, maxtag, default=None):
347    return tuple([sparse.get(i, default) for i in xrange(0, 1+maxtag)])
348
349  kkey = 1
350  kvalue = 2
351
352  _TEXT = _BuildTagLookupTable({
353    0: "ErrorCode",
354    1: "key",
355    2: "value",
356  }, 2)
357
358  _TYPES = _BuildTagLookupTable({
359    0: ProtocolBuffer.Encoder.NUMERIC,
360    1: ProtocolBuffer.Encoder.STRING,
361    2: ProtocolBuffer.Encoder.STRING,
362  }, 2, ProtocolBuffer.Encoder.MAX_TYPE)
363
364  # stylesheet for XML output
365  _STYLE = \
366   """"""
367  _STYLE_CONTENT_TYPE = \
368   """"""
369  _PROTO_DESCRIPTOR_NAME = 'KeyValues'
370  _SERIALIZED_DESCRIPTOR = array.array('B')
371  _SERIALIZED_DESCRIPTOR.fromstring(base64.decodestring("Wi90aGlyZF9wYXJ0eS9weS9hcHBlbmdpbmVfbWFwcmVkdWNlL3NyYy9rdi5wcm90bwoJS2V5VmFsdWVzExoDa2V5IAEoAjAJOAKjAaoBBWN0eXBlsgEEQ29yZKQBFBMaBXZhbHVlIAIoAjAJOAOjAaoBBWN0eXBlsgEEQ29yZKQBFMIBCEtleVZhbHVl"))
372  if _net_proto___parse__python is not None:
373    _net_proto___parse__python.RegisterType(
374        _SERIALIZED_DESCRIPTOR.tostring())
375
376if _extension_runtime:
377  pass
378
379__all__ = ['KeyValue','KeyValues']
380