/game_client/src/com/jediflasher/game_client/server/messages/Header.as

http://mmorpg-client-server-learning.googlecode.com/ · ActionScript · 205 lines · 165 code · 32 blank · 8 comment · 23 complexity · 025bdf0e88736134ad23bf1a5b3c2a29 MD5 · raw file

  1. package com.jediflasher.game_client.server.messages {
  2. import com.netease.protobuf.*;
  3. import com.netease.protobuf.fieldDescriptors.*;
  4. import flash.utils.Endian;
  5. import flash.utils.IDataInput;
  6. import flash.utils.IDataOutput;
  7. import flash.utils.IExternalizable;
  8. import flash.errors.IOError;
  9. import com.jediflasher.game_client.server.messages.MessageType;
  10. import com.jediflasher.game_client.server.messages.ServiceType;
  11. // @@protoc_insertion_point(imports)
  12. // @@protoc_insertion_point(class_metadata)
  13. public dynamic final class Header extends com.netease.protobuf.Message {
  14. public static const REQUEST_ID:FieldDescriptor$TYPE_INT32 = new FieldDescriptor$TYPE_INT32("com.jediflasher.game_client.server.messages.Header.request_id", "requestId", (1 << 3) | com.netease.protobuf.WireType.VARINT);
  15. private var request_id$field:int;
  16. private var hasField$0:uint = 0;
  17. public function removeRequestId():void {
  18. hasField$0 &= 0xfffffffe;
  19. request_id$field = new int();
  20. }
  21. public function get hasRequestId():Boolean {
  22. return (hasField$0 & 0x1) != 0;
  23. }
  24. public function set requestId(value:int):void {
  25. hasField$0 |= 0x1;
  26. request_id$field = value;
  27. }
  28. public function get requestId():int {
  29. return request_id$field;
  30. }
  31. public static const SERVICE_TYPE:FieldDescriptor$TYPE_ENUM = new FieldDescriptor$TYPE_ENUM("com.jediflasher.game_client.server.messages.Header.service_type", "serviceType", (2 << 3) | com.netease.protobuf.WireType.VARINT, com.jediflasher.game_client.server.messages.ServiceType);
  32. private var service_type$field:int;
  33. public function removeServiceType():void {
  34. hasField$0 &= 0xfffffffd;
  35. service_type$field = new int();
  36. }
  37. public function get hasServiceType():Boolean {
  38. return (hasField$0 & 0x2) != 0;
  39. }
  40. public function set serviceType(value:int):void {
  41. hasField$0 |= 0x2;
  42. service_type$field = value;
  43. }
  44. public function get serviceType():int {
  45. return service_type$field;
  46. }
  47. public static const MESSAGE_TYPE:FieldDescriptor$TYPE_ENUM = new FieldDescriptor$TYPE_ENUM("com.jediflasher.game_client.server.messages.Header.message_type", "messageType", (3 << 3) | com.netease.protobuf.WireType.VARINT, com.jediflasher.game_client.server.messages.MessageType);
  48. public var messageType:int;
  49. public static const METHOD:FieldDescriptor$TYPE_INT32 = new FieldDescriptor$TYPE_INT32("com.jediflasher.game_client.server.messages.Header.method", "method", (4 << 3) | com.netease.protobuf.WireType.VARINT);
  50. private var method$field:int;
  51. public function removeMethod():void {
  52. hasField$0 &= 0xfffffffb;
  53. method$field = new int();
  54. }
  55. public function get hasMethod():Boolean {
  56. return (hasField$0 & 0x4) != 0;
  57. }
  58. public function set method(value:int):void {
  59. hasField$0 |= 0x4;
  60. method$field = value;
  61. }
  62. public function get method():int {
  63. return method$field;
  64. }
  65. public static const BODY_SIZE:FieldDescriptor$TYPE_INT32 = new FieldDescriptor$TYPE_INT32("com.jediflasher.game_client.server.messages.Header.body_size", "bodySize", (5 << 3) | com.netease.protobuf.WireType.VARINT);
  66. public var bodySize:int;
  67. public static const USER_ID:FieldDescriptor$TYPE_INT32 = new FieldDescriptor$TYPE_INT32("com.jediflasher.game_client.server.messages.Header.user_id", "userId", (6 << 3) | com.netease.protobuf.WireType.VARINT);
  68. private var user_id$field:int;
  69. public function removeUserId():void {
  70. hasField$0 &= 0xfffffff7;
  71. user_id$field = new int();
  72. }
  73. public function get hasUserId():Boolean {
  74. return (hasField$0 & 0x8) != 0;
  75. }
  76. public function set userId(value:int):void {
  77. hasField$0 |= 0x8;
  78. user_id$field = value;
  79. }
  80. public function get userId():int {
  81. return user_id$field;
  82. }
  83. /**
  84. * @private
  85. */
  86. override public final function writeToBuffer(output:com.netease.protobuf.WritingBuffer):void {
  87. if (hasRequestId) {
  88. com.netease.protobuf.WriteUtils.writeTag(output, com.netease.protobuf.WireType.VARINT, 1);
  89. com.netease.protobuf.WriteUtils.write$TYPE_INT32(output, request_id$field);
  90. }
  91. if (hasServiceType) {
  92. com.netease.protobuf.WriteUtils.writeTag(output, com.netease.protobuf.WireType.VARINT, 2);
  93. com.netease.protobuf.WriteUtils.write$TYPE_ENUM(output, service_type$field);
  94. }
  95. com.netease.protobuf.WriteUtils.writeTag(output, com.netease.protobuf.WireType.VARINT, 3);
  96. com.netease.protobuf.WriteUtils.write$TYPE_ENUM(output, messageType);
  97. if (hasMethod) {
  98. com.netease.protobuf.WriteUtils.writeTag(output, com.netease.protobuf.WireType.VARINT, 4);
  99. com.netease.protobuf.WriteUtils.write$TYPE_INT32(output, method$field);
  100. }
  101. com.netease.protobuf.WriteUtils.writeTag(output, com.netease.protobuf.WireType.VARINT, 5);
  102. com.netease.protobuf.WriteUtils.write$TYPE_INT32(output, bodySize);
  103. if (hasUserId) {
  104. com.netease.protobuf.WriteUtils.writeTag(output, com.netease.protobuf.WireType.VARINT, 6);
  105. com.netease.protobuf.WriteUtils.write$TYPE_INT32(output, user_id$field);
  106. }
  107. for (var fieldKey:* in this) {
  108. super.writeUnknown(output, fieldKey);
  109. }
  110. }
  111. /**
  112. * @private
  113. */
  114. override public final function readFromSlice(input:flash.utils.IDataInput, bytesAfterSlice:uint):void {
  115. var request_id$count:uint = 0;
  116. var service_type$count:uint = 0;
  117. var message_type$count:uint = 0;
  118. var method$count:uint = 0;
  119. var body_size$count:uint = 0;
  120. var user_id$count:uint = 0;
  121. while (input.bytesAvailable > bytesAfterSlice) {
  122. var tag:uint = com.netease.protobuf.ReadUtils.read$TYPE_UINT32(input);
  123. switch (tag >> 3) {
  124. case 1:
  125. if (request_id$count != 0) {
  126. throw new flash.errors.IOError('Bad data format: Header.requestId cannot be set twice.');
  127. }
  128. ++request_id$count;
  129. requestId = com.netease.protobuf.ReadUtils.read$TYPE_INT32(input);
  130. break;
  131. case 2:
  132. if (service_type$count != 0) {
  133. throw new flash.errors.IOError('Bad data format: Header.serviceType cannot be set twice.');
  134. }
  135. ++service_type$count;
  136. serviceType = com.netease.protobuf.ReadUtils.read$TYPE_ENUM(input);
  137. break;
  138. case 3:
  139. if (message_type$count != 0) {
  140. throw new flash.errors.IOError('Bad data format: Header.messageType cannot be set twice.');
  141. }
  142. ++message_type$count;
  143. messageType = com.netease.protobuf.ReadUtils.read$TYPE_ENUM(input);
  144. break;
  145. case 4:
  146. if (method$count != 0) {
  147. throw new flash.errors.IOError('Bad data format: Header.method cannot be set twice.');
  148. }
  149. ++method$count;
  150. method = com.netease.protobuf.ReadUtils.read$TYPE_INT32(input);
  151. break;
  152. case 5:
  153. if (body_size$count != 0) {
  154. throw new flash.errors.IOError('Bad data format: Header.bodySize cannot be set twice.');
  155. }
  156. ++body_size$count;
  157. bodySize = com.netease.protobuf.ReadUtils.read$TYPE_INT32(input);
  158. break;
  159. case 6:
  160. if (user_id$count != 0) {
  161. throw new flash.errors.IOError('Bad data format: Header.userId cannot be set twice.');
  162. }
  163. ++user_id$count;
  164. userId = com.netease.protobuf.ReadUtils.read$TYPE_INT32(input);
  165. break;
  166. default:
  167. super.readUnknown(input, tag);
  168. break;
  169. }
  170. }
  171. }
  172. }
  173. }