blob: cef593ee1b241b132edc8be969937ced57b80cb8 [file] [log] [blame]
tom0eb04ca2014-08-25 14:34:51 -07001// Copyright (c) 2008 The Board of Trustees of The Leland Stanford Junior University
2// Copyright (c) 2011, 2012 Open Networking Foundation
3// Copyright (c) 2012, 2013 Big Switch Networks, Inc.
4// This library was generated by the LoxiGen Compiler.
5// See the file LICENSE.txt which should have been included in the source distribution
6
7// Automatically generated by LOXI from template of_class.java
8// Do not modify
9
10package org.projectfloodlight.openflow.protocol.ver13;
11
12import org.projectfloodlight.openflow.protocol.*;
13import org.projectfloodlight.openflow.protocol.action.*;
14import org.projectfloodlight.openflow.protocol.actionid.*;
15import org.projectfloodlight.openflow.protocol.bsntlv.*;
16import org.projectfloodlight.openflow.protocol.errormsg.*;
17import org.projectfloodlight.openflow.protocol.meterband.*;
18import org.projectfloodlight.openflow.protocol.instruction.*;
19import org.projectfloodlight.openflow.protocol.instructionid.*;
20import org.projectfloodlight.openflow.protocol.match.*;
21import org.projectfloodlight.openflow.protocol.oxm.*;
22import org.projectfloodlight.openflow.protocol.queueprop.*;
23import org.projectfloodlight.openflow.types.*;
24import org.projectfloodlight.openflow.util.*;
25import org.projectfloodlight.openflow.exceptions.*;
26import org.slf4j.Logger;
27import org.slf4j.LoggerFactory;
28import java.util.Set;
29import org.jboss.netty.buffer.ChannelBuffer;
30import com.google.common.hash.PrimitiveSink;
31import com.google.common.hash.Funnel;
32
33class OFBsnLacpConvergenceNotifVer13 implements OFBsnLacpConvergenceNotif {
34 private static final Logger logger = LoggerFactory.getLogger(OFBsnLacpConvergenceNotifVer13.class);
35 // version: 1.3
36 final static byte WIRE_VERSION = 4;
37 final static int LENGTH = 52;
38
39 private final static long DEFAULT_XID = 0x0L;
40 private final static short DEFAULT_CONVERGENCE_STATUS = (short) 0x0;
41 private final static OFPort DEFAULT_PORT_NO = OFPort.ANY;
42 private final static int DEFAULT_ACTOR_SYS_PRIORITY = 0x0;
43 private final static MacAddress DEFAULT_ACTOR_SYS_MAC = MacAddress.NONE;
44 private final static int DEFAULT_ACTOR_PORT_PRIORITY = 0x0;
45 private final static int DEFAULT_ACTOR_PORT_NUM = 0x0;
46 private final static int DEFAULT_ACTOR_KEY = 0x0;
47 private final static int DEFAULT_PARTNER_SYS_PRIORITY = 0x0;
48 private final static MacAddress DEFAULT_PARTNER_SYS_MAC = MacAddress.NONE;
49 private final static int DEFAULT_PARTNER_PORT_PRIORITY = 0x0;
50 private final static int DEFAULT_PARTNER_PORT_NUM = 0x0;
51 private final static int DEFAULT_PARTNER_KEY = 0x0;
52
53 // OF message fields
54 private final long xid;
55 private final short convergenceStatus;
56 private final OFPort portNo;
57 private final int actorSysPriority;
58 private final MacAddress actorSysMac;
59 private final int actorPortPriority;
60 private final int actorPortNum;
61 private final int actorKey;
62 private final int partnerSysPriority;
63 private final MacAddress partnerSysMac;
64 private final int partnerPortPriority;
65 private final int partnerPortNum;
66 private final int partnerKey;
67//
68 // Immutable default instance
69 final static OFBsnLacpConvergenceNotifVer13 DEFAULT = new OFBsnLacpConvergenceNotifVer13(
70 DEFAULT_XID, DEFAULT_CONVERGENCE_STATUS, DEFAULT_PORT_NO, DEFAULT_ACTOR_SYS_PRIORITY, DEFAULT_ACTOR_SYS_MAC, DEFAULT_ACTOR_PORT_PRIORITY, DEFAULT_ACTOR_PORT_NUM, DEFAULT_ACTOR_KEY, DEFAULT_PARTNER_SYS_PRIORITY, DEFAULT_PARTNER_SYS_MAC, DEFAULT_PARTNER_PORT_PRIORITY, DEFAULT_PARTNER_PORT_NUM, DEFAULT_PARTNER_KEY
71 );
72
73 // package private constructor - used by readers, builders, and factory
74 OFBsnLacpConvergenceNotifVer13(long xid, short convergenceStatus, OFPort portNo, int actorSysPriority, MacAddress actorSysMac, int actorPortPriority, int actorPortNum, int actorKey, int partnerSysPriority, MacAddress partnerSysMac, int partnerPortPriority, int partnerPortNum, int partnerKey) {
75 this.xid = xid;
76 this.convergenceStatus = convergenceStatus;
77 this.portNo = portNo;
78 this.actorSysPriority = actorSysPriority;
79 this.actorSysMac = actorSysMac;
80 this.actorPortPriority = actorPortPriority;
81 this.actorPortNum = actorPortNum;
82 this.actorKey = actorKey;
83 this.partnerSysPriority = partnerSysPriority;
84 this.partnerSysMac = partnerSysMac;
85 this.partnerPortPriority = partnerPortPriority;
86 this.partnerPortNum = partnerPortNum;
87 this.partnerKey = partnerKey;
88 }
89
90 // Accessors for OF message fields
91 @Override
92 public OFVersion getVersion() {
93 return OFVersion.OF_13;
94 }
95
96 @Override
97 public OFType getType() {
98 return OFType.EXPERIMENTER;
99 }
100
101 @Override
102 public long getXid() {
103 return xid;
104 }
105
106 @Override
107 public long getExperimenter() {
108 return 0x5c16c7L;
109 }
110
111 @Override
112 public long getSubtype() {
113 return 0x2bL;
114 }
115
116 @Override
117 public short getConvergenceStatus() {
118 return convergenceStatus;
119 }
120
121 @Override
122 public OFPort getPortNo() {
123 return portNo;
124 }
125
126 @Override
127 public int getActorSysPriority() {
128 return actorSysPriority;
129 }
130
131 @Override
132 public MacAddress getActorSysMac() {
133 return actorSysMac;
134 }
135
136 @Override
137 public int getActorPortPriority() {
138 return actorPortPriority;
139 }
140
141 @Override
142 public int getActorPortNum() {
143 return actorPortNum;
144 }
145
146 @Override
147 public int getActorKey() {
148 return actorKey;
149 }
150
151 @Override
152 public int getPartnerSysPriority() {
153 return partnerSysPriority;
154 }
155
156 @Override
157 public MacAddress getPartnerSysMac() {
158 return partnerSysMac;
159 }
160
161 @Override
162 public int getPartnerPortPriority() {
163 return partnerPortPriority;
164 }
165
166 @Override
167 public int getPartnerPortNum() {
168 return partnerPortNum;
169 }
170
171 @Override
172 public int getPartnerKey() {
173 return partnerKey;
174 }
175
176
177
178 public OFBsnLacpConvergenceNotif.Builder createBuilder() {
179 return new BuilderWithParent(this);
180 }
181
182 static class BuilderWithParent implements OFBsnLacpConvergenceNotif.Builder {
183 final OFBsnLacpConvergenceNotifVer13 parentMessage;
184
185 // OF message fields
186 private boolean xidSet;
187 private long xid;
188 private boolean convergenceStatusSet;
189 private short convergenceStatus;
190 private boolean portNoSet;
191 private OFPort portNo;
192 private boolean actorSysPrioritySet;
193 private int actorSysPriority;
194 private boolean actorSysMacSet;
195 private MacAddress actorSysMac;
196 private boolean actorPortPrioritySet;
197 private int actorPortPriority;
198 private boolean actorPortNumSet;
199 private int actorPortNum;
200 private boolean actorKeySet;
201 private int actorKey;
202 private boolean partnerSysPrioritySet;
203 private int partnerSysPriority;
204 private boolean partnerSysMacSet;
205 private MacAddress partnerSysMac;
206 private boolean partnerPortPrioritySet;
207 private int partnerPortPriority;
208 private boolean partnerPortNumSet;
209 private int partnerPortNum;
210 private boolean partnerKeySet;
211 private int partnerKey;
212
213 BuilderWithParent(OFBsnLacpConvergenceNotifVer13 parentMessage) {
214 this.parentMessage = parentMessage;
215 }
216
217 @Override
218 public OFVersion getVersion() {
219 return OFVersion.OF_13;
220 }
221
222 @Override
223 public OFType getType() {
224 return OFType.EXPERIMENTER;
225 }
226
227 @Override
228 public long getXid() {
229 return xid;
230 }
231
232 @Override
233 public OFBsnLacpConvergenceNotif.Builder setXid(long xid) {
234 this.xid = xid;
235 this.xidSet = true;
236 return this;
237 }
238 @Override
239 public long getExperimenter() {
240 return 0x5c16c7L;
241 }
242
243 @Override
244 public long getSubtype() {
245 return 0x2bL;
246 }
247
248 @Override
249 public short getConvergenceStatus() {
250 return convergenceStatus;
251 }
252
253 @Override
254 public OFBsnLacpConvergenceNotif.Builder setConvergenceStatus(short convergenceStatus) {
255 this.convergenceStatus = convergenceStatus;
256 this.convergenceStatusSet = true;
257 return this;
258 }
259 @Override
260 public OFPort getPortNo() {
261 return portNo;
262 }
263
264 @Override
265 public OFBsnLacpConvergenceNotif.Builder setPortNo(OFPort portNo) {
266 this.portNo = portNo;
267 this.portNoSet = true;
268 return this;
269 }
270 @Override
271 public int getActorSysPriority() {
272 return actorSysPriority;
273 }
274
275 @Override
276 public OFBsnLacpConvergenceNotif.Builder setActorSysPriority(int actorSysPriority) {
277 this.actorSysPriority = actorSysPriority;
278 this.actorSysPrioritySet = true;
279 return this;
280 }
281 @Override
282 public MacAddress getActorSysMac() {
283 return actorSysMac;
284 }
285
286 @Override
287 public OFBsnLacpConvergenceNotif.Builder setActorSysMac(MacAddress actorSysMac) {
288 this.actorSysMac = actorSysMac;
289 this.actorSysMacSet = true;
290 return this;
291 }
292 @Override
293 public int getActorPortPriority() {
294 return actorPortPriority;
295 }
296
297 @Override
298 public OFBsnLacpConvergenceNotif.Builder setActorPortPriority(int actorPortPriority) {
299 this.actorPortPriority = actorPortPriority;
300 this.actorPortPrioritySet = true;
301 return this;
302 }
303 @Override
304 public int getActorPortNum() {
305 return actorPortNum;
306 }
307
308 @Override
309 public OFBsnLacpConvergenceNotif.Builder setActorPortNum(int actorPortNum) {
310 this.actorPortNum = actorPortNum;
311 this.actorPortNumSet = true;
312 return this;
313 }
314 @Override
315 public int getActorKey() {
316 return actorKey;
317 }
318
319 @Override
320 public OFBsnLacpConvergenceNotif.Builder setActorKey(int actorKey) {
321 this.actorKey = actorKey;
322 this.actorKeySet = true;
323 return this;
324 }
325 @Override
326 public int getPartnerSysPriority() {
327 return partnerSysPriority;
328 }
329
330 @Override
331 public OFBsnLacpConvergenceNotif.Builder setPartnerSysPriority(int partnerSysPriority) {
332 this.partnerSysPriority = partnerSysPriority;
333 this.partnerSysPrioritySet = true;
334 return this;
335 }
336 @Override
337 public MacAddress getPartnerSysMac() {
338 return partnerSysMac;
339 }
340
341 @Override
342 public OFBsnLacpConvergenceNotif.Builder setPartnerSysMac(MacAddress partnerSysMac) {
343 this.partnerSysMac = partnerSysMac;
344 this.partnerSysMacSet = true;
345 return this;
346 }
347 @Override
348 public int getPartnerPortPriority() {
349 return partnerPortPriority;
350 }
351
352 @Override
353 public OFBsnLacpConvergenceNotif.Builder setPartnerPortPriority(int partnerPortPriority) {
354 this.partnerPortPriority = partnerPortPriority;
355 this.partnerPortPrioritySet = true;
356 return this;
357 }
358 @Override
359 public int getPartnerPortNum() {
360 return partnerPortNum;
361 }
362
363 @Override
364 public OFBsnLacpConvergenceNotif.Builder setPartnerPortNum(int partnerPortNum) {
365 this.partnerPortNum = partnerPortNum;
366 this.partnerPortNumSet = true;
367 return this;
368 }
369 @Override
370 public int getPartnerKey() {
371 return partnerKey;
372 }
373
374 @Override
375 public OFBsnLacpConvergenceNotif.Builder setPartnerKey(int partnerKey) {
376 this.partnerKey = partnerKey;
377 this.partnerKeySet = true;
378 return this;
379 }
380
381
382 @Override
383 public OFBsnLacpConvergenceNotif build() {
384 long xid = this.xidSet ? this.xid : parentMessage.xid;
385 short convergenceStatus = this.convergenceStatusSet ? this.convergenceStatus : parentMessage.convergenceStatus;
386 OFPort portNo = this.portNoSet ? this.portNo : parentMessage.portNo;
387 if(portNo == null)
388 throw new NullPointerException("Property portNo must not be null");
389 int actorSysPriority = this.actorSysPrioritySet ? this.actorSysPriority : parentMessage.actorSysPriority;
390 MacAddress actorSysMac = this.actorSysMacSet ? this.actorSysMac : parentMessage.actorSysMac;
391 if(actorSysMac == null)
392 throw new NullPointerException("Property actorSysMac must not be null");
393 int actorPortPriority = this.actorPortPrioritySet ? this.actorPortPriority : parentMessage.actorPortPriority;
394 int actorPortNum = this.actorPortNumSet ? this.actorPortNum : parentMessage.actorPortNum;
395 int actorKey = this.actorKeySet ? this.actorKey : parentMessage.actorKey;
396 int partnerSysPriority = this.partnerSysPrioritySet ? this.partnerSysPriority : parentMessage.partnerSysPriority;
397 MacAddress partnerSysMac = this.partnerSysMacSet ? this.partnerSysMac : parentMessage.partnerSysMac;
398 if(partnerSysMac == null)
399 throw new NullPointerException("Property partnerSysMac must not be null");
400 int partnerPortPriority = this.partnerPortPrioritySet ? this.partnerPortPriority : parentMessage.partnerPortPriority;
401 int partnerPortNum = this.partnerPortNumSet ? this.partnerPortNum : parentMessage.partnerPortNum;
402 int partnerKey = this.partnerKeySet ? this.partnerKey : parentMessage.partnerKey;
403
404 //
405 return new OFBsnLacpConvergenceNotifVer13(
406 xid,
407 convergenceStatus,
408 portNo,
409 actorSysPriority,
410 actorSysMac,
411 actorPortPriority,
412 actorPortNum,
413 actorKey,
414 partnerSysPriority,
415 partnerSysMac,
416 partnerPortPriority,
417 partnerPortNum,
418 partnerKey
419 );
420 }
421
422 }
423
424 static class Builder implements OFBsnLacpConvergenceNotif.Builder {
425 // OF message fields
426 private boolean xidSet;
427 private long xid;
428 private boolean convergenceStatusSet;
429 private short convergenceStatus;
430 private boolean portNoSet;
431 private OFPort portNo;
432 private boolean actorSysPrioritySet;
433 private int actorSysPriority;
434 private boolean actorSysMacSet;
435 private MacAddress actorSysMac;
436 private boolean actorPortPrioritySet;
437 private int actorPortPriority;
438 private boolean actorPortNumSet;
439 private int actorPortNum;
440 private boolean actorKeySet;
441 private int actorKey;
442 private boolean partnerSysPrioritySet;
443 private int partnerSysPriority;
444 private boolean partnerSysMacSet;
445 private MacAddress partnerSysMac;
446 private boolean partnerPortPrioritySet;
447 private int partnerPortPriority;
448 private boolean partnerPortNumSet;
449 private int partnerPortNum;
450 private boolean partnerKeySet;
451 private int partnerKey;
452
453 @Override
454 public OFVersion getVersion() {
455 return OFVersion.OF_13;
456 }
457
458 @Override
459 public OFType getType() {
460 return OFType.EXPERIMENTER;
461 }
462
463 @Override
464 public long getXid() {
465 return xid;
466 }
467
468 @Override
469 public OFBsnLacpConvergenceNotif.Builder setXid(long xid) {
470 this.xid = xid;
471 this.xidSet = true;
472 return this;
473 }
474 @Override
475 public long getExperimenter() {
476 return 0x5c16c7L;
477 }
478
479 @Override
480 public long getSubtype() {
481 return 0x2bL;
482 }
483
484 @Override
485 public short getConvergenceStatus() {
486 return convergenceStatus;
487 }
488
489 @Override
490 public OFBsnLacpConvergenceNotif.Builder setConvergenceStatus(short convergenceStatus) {
491 this.convergenceStatus = convergenceStatus;
492 this.convergenceStatusSet = true;
493 return this;
494 }
495 @Override
496 public OFPort getPortNo() {
497 return portNo;
498 }
499
500 @Override
501 public OFBsnLacpConvergenceNotif.Builder setPortNo(OFPort portNo) {
502 this.portNo = portNo;
503 this.portNoSet = true;
504 return this;
505 }
506 @Override
507 public int getActorSysPriority() {
508 return actorSysPriority;
509 }
510
511 @Override
512 public OFBsnLacpConvergenceNotif.Builder setActorSysPriority(int actorSysPriority) {
513 this.actorSysPriority = actorSysPriority;
514 this.actorSysPrioritySet = true;
515 return this;
516 }
517 @Override
518 public MacAddress getActorSysMac() {
519 return actorSysMac;
520 }
521
522 @Override
523 public OFBsnLacpConvergenceNotif.Builder setActorSysMac(MacAddress actorSysMac) {
524 this.actorSysMac = actorSysMac;
525 this.actorSysMacSet = true;
526 return this;
527 }
528 @Override
529 public int getActorPortPriority() {
530 return actorPortPriority;
531 }
532
533 @Override
534 public OFBsnLacpConvergenceNotif.Builder setActorPortPriority(int actorPortPriority) {
535 this.actorPortPriority = actorPortPriority;
536 this.actorPortPrioritySet = true;
537 return this;
538 }
539 @Override
540 public int getActorPortNum() {
541 return actorPortNum;
542 }
543
544 @Override
545 public OFBsnLacpConvergenceNotif.Builder setActorPortNum(int actorPortNum) {
546 this.actorPortNum = actorPortNum;
547 this.actorPortNumSet = true;
548 return this;
549 }
550 @Override
551 public int getActorKey() {
552 return actorKey;
553 }
554
555 @Override
556 public OFBsnLacpConvergenceNotif.Builder setActorKey(int actorKey) {
557 this.actorKey = actorKey;
558 this.actorKeySet = true;
559 return this;
560 }
561 @Override
562 public int getPartnerSysPriority() {
563 return partnerSysPriority;
564 }
565
566 @Override
567 public OFBsnLacpConvergenceNotif.Builder setPartnerSysPriority(int partnerSysPriority) {
568 this.partnerSysPriority = partnerSysPriority;
569 this.partnerSysPrioritySet = true;
570 return this;
571 }
572 @Override
573 public MacAddress getPartnerSysMac() {
574 return partnerSysMac;
575 }
576
577 @Override
578 public OFBsnLacpConvergenceNotif.Builder setPartnerSysMac(MacAddress partnerSysMac) {
579 this.partnerSysMac = partnerSysMac;
580 this.partnerSysMacSet = true;
581 return this;
582 }
583 @Override
584 public int getPartnerPortPriority() {
585 return partnerPortPriority;
586 }
587
588 @Override
589 public OFBsnLacpConvergenceNotif.Builder setPartnerPortPriority(int partnerPortPriority) {
590 this.partnerPortPriority = partnerPortPriority;
591 this.partnerPortPrioritySet = true;
592 return this;
593 }
594 @Override
595 public int getPartnerPortNum() {
596 return partnerPortNum;
597 }
598
599 @Override
600 public OFBsnLacpConvergenceNotif.Builder setPartnerPortNum(int partnerPortNum) {
601 this.partnerPortNum = partnerPortNum;
602 this.partnerPortNumSet = true;
603 return this;
604 }
605 @Override
606 public int getPartnerKey() {
607 return partnerKey;
608 }
609
610 @Override
611 public OFBsnLacpConvergenceNotif.Builder setPartnerKey(int partnerKey) {
612 this.partnerKey = partnerKey;
613 this.partnerKeySet = true;
614 return this;
615 }
616//
617 @Override
618 public OFBsnLacpConvergenceNotif build() {
619 long xid = this.xidSet ? this.xid : DEFAULT_XID;
620 short convergenceStatus = this.convergenceStatusSet ? this.convergenceStatus : DEFAULT_CONVERGENCE_STATUS;
621 OFPort portNo = this.portNoSet ? this.portNo : DEFAULT_PORT_NO;
622 if(portNo == null)
623 throw new NullPointerException("Property portNo must not be null");
624 int actorSysPriority = this.actorSysPrioritySet ? this.actorSysPriority : DEFAULT_ACTOR_SYS_PRIORITY;
625 MacAddress actorSysMac = this.actorSysMacSet ? this.actorSysMac : DEFAULT_ACTOR_SYS_MAC;
626 if(actorSysMac == null)
627 throw new NullPointerException("Property actorSysMac must not be null");
628 int actorPortPriority = this.actorPortPrioritySet ? this.actorPortPriority : DEFAULT_ACTOR_PORT_PRIORITY;
629 int actorPortNum = this.actorPortNumSet ? this.actorPortNum : DEFAULT_ACTOR_PORT_NUM;
630 int actorKey = this.actorKeySet ? this.actorKey : DEFAULT_ACTOR_KEY;
631 int partnerSysPriority = this.partnerSysPrioritySet ? this.partnerSysPriority : DEFAULT_PARTNER_SYS_PRIORITY;
632 MacAddress partnerSysMac = this.partnerSysMacSet ? this.partnerSysMac : DEFAULT_PARTNER_SYS_MAC;
633 if(partnerSysMac == null)
634 throw new NullPointerException("Property partnerSysMac must not be null");
635 int partnerPortPriority = this.partnerPortPrioritySet ? this.partnerPortPriority : DEFAULT_PARTNER_PORT_PRIORITY;
636 int partnerPortNum = this.partnerPortNumSet ? this.partnerPortNum : DEFAULT_PARTNER_PORT_NUM;
637 int partnerKey = this.partnerKeySet ? this.partnerKey : DEFAULT_PARTNER_KEY;
638
639
640 return new OFBsnLacpConvergenceNotifVer13(
641 xid,
642 convergenceStatus,
643 portNo,
644 actorSysPriority,
645 actorSysMac,
646 actorPortPriority,
647 actorPortNum,
648 actorKey,
649 partnerSysPriority,
650 partnerSysMac,
651 partnerPortPriority,
652 partnerPortNum,
653 partnerKey
654 );
655 }
656
657 }
658
659
660 final static Reader READER = new Reader();
661 static class Reader implements OFMessageReader<OFBsnLacpConvergenceNotif> {
662 @Override
663 public OFBsnLacpConvergenceNotif readFrom(ChannelBuffer bb) throws OFParseError {
664 int start = bb.readerIndex();
665 // fixed value property version == 4
666 byte version = bb.readByte();
667 if(version != (byte) 0x4)
668 throw new OFParseError("Wrong version: Expected=OFVersion.OF_13(4), got="+version);
669 // fixed value property type == 4
670 byte type = bb.readByte();
671 if(type != (byte) 0x4)
672 throw new OFParseError("Wrong type: Expected=OFType.EXPERIMENTER(4), got="+type);
673 int length = U16.f(bb.readShort());
674 if(length != 52)
675 throw new OFParseError("Wrong length: Expected=52(52), got="+length);
676 if(bb.readableBytes() + (bb.readerIndex() - start) < length) {
677 // Buffer does not have all data yet
678 bb.readerIndex(start);
679 return null;
680 }
681 if(logger.isTraceEnabled())
682 logger.trace("readFrom - length={}", length);
683 long xid = U32.f(bb.readInt());
684 // fixed value property experimenter == 0x5c16c7L
685 int experimenter = bb.readInt();
686 if(experimenter != 0x5c16c7)
687 throw new OFParseError("Wrong experimenter: Expected=0x5c16c7L(0x5c16c7L), got="+experimenter);
688 // fixed value property subtype == 0x2bL
689 int subtype = bb.readInt();
690 if(subtype != 0x2b)
691 throw new OFParseError("Wrong subtype: Expected=0x2bL(0x2bL), got="+subtype);
692 short convergenceStatus = U8.f(bb.readByte());
693 // pad: 3 bytes
694 bb.skipBytes(3);
695 OFPort portNo = OFPort.read4Bytes(bb);
696 int actorSysPriority = U16.f(bb.readShort());
697 MacAddress actorSysMac = MacAddress.read6Bytes(bb);
698 int actorPortPriority = U16.f(bb.readShort());
699 int actorPortNum = U16.f(bb.readShort());
700 int actorKey = U16.f(bb.readShort());
701 int partnerSysPriority = U16.f(bb.readShort());
702 MacAddress partnerSysMac = MacAddress.read6Bytes(bb);
703 int partnerPortPriority = U16.f(bb.readShort());
704 int partnerPortNum = U16.f(bb.readShort());
705 int partnerKey = U16.f(bb.readShort());
706
707 OFBsnLacpConvergenceNotifVer13 bsnLacpConvergenceNotifVer13 = new OFBsnLacpConvergenceNotifVer13(
708 xid,
709 convergenceStatus,
710 portNo,
711 actorSysPriority,
712 actorSysMac,
713 actorPortPriority,
714 actorPortNum,
715 actorKey,
716 partnerSysPriority,
717 partnerSysMac,
718 partnerPortPriority,
719 partnerPortNum,
720 partnerKey
721 );
722 if(logger.isTraceEnabled())
723 logger.trace("readFrom - read={}", bsnLacpConvergenceNotifVer13);
724 return bsnLacpConvergenceNotifVer13;
725 }
726 }
727
728 public void putTo(PrimitiveSink sink) {
729 FUNNEL.funnel(this, sink);
730 }
731
732 final static OFBsnLacpConvergenceNotifVer13Funnel FUNNEL = new OFBsnLacpConvergenceNotifVer13Funnel();
733 static class OFBsnLacpConvergenceNotifVer13Funnel implements Funnel<OFBsnLacpConvergenceNotifVer13> {
734 private static final long serialVersionUID = 1L;
735 @Override
736 public void funnel(OFBsnLacpConvergenceNotifVer13 message, PrimitiveSink sink) {
737 // fixed value property version = 4
738 sink.putByte((byte) 0x4);
739 // fixed value property type = 4
740 sink.putByte((byte) 0x4);
741 // fixed value property length = 52
742 sink.putShort((short) 0x34);
743 sink.putLong(message.xid);
744 // fixed value property experimenter = 0x5c16c7L
745 sink.putInt(0x5c16c7);
746 // fixed value property subtype = 0x2bL
747 sink.putInt(0x2b);
748 sink.putShort(message.convergenceStatus);
749 // skip pad (3 bytes)
750 message.portNo.putTo(sink);
751 sink.putInt(message.actorSysPriority);
752 message.actorSysMac.putTo(sink);
753 sink.putInt(message.actorPortPriority);
754 sink.putInt(message.actorPortNum);
755 sink.putInt(message.actorKey);
756 sink.putInt(message.partnerSysPriority);
757 message.partnerSysMac.putTo(sink);
758 sink.putInt(message.partnerPortPriority);
759 sink.putInt(message.partnerPortNum);
760 sink.putInt(message.partnerKey);
761 }
762 }
763
764
765 public void writeTo(ChannelBuffer bb) {
766 WRITER.write(bb, this);
767 }
768
769 final static Writer WRITER = new Writer();
770 static class Writer implements OFMessageWriter<OFBsnLacpConvergenceNotifVer13> {
771 @Override
772 public void write(ChannelBuffer bb, OFBsnLacpConvergenceNotifVer13 message) {
773 // fixed value property version = 4
774 bb.writeByte((byte) 0x4);
775 // fixed value property type = 4
776 bb.writeByte((byte) 0x4);
777 // fixed value property length = 52
778 bb.writeShort((short) 0x34);
779 bb.writeInt(U32.t(message.xid));
780 // fixed value property experimenter = 0x5c16c7L
781 bb.writeInt(0x5c16c7);
782 // fixed value property subtype = 0x2bL
783 bb.writeInt(0x2b);
784 bb.writeByte(U8.t(message.convergenceStatus));
785 // pad: 3 bytes
786 bb.writeZero(3);
787 message.portNo.write4Bytes(bb);
788 bb.writeShort(U16.t(message.actorSysPriority));
789 message.actorSysMac.write6Bytes(bb);
790 bb.writeShort(U16.t(message.actorPortPriority));
791 bb.writeShort(U16.t(message.actorPortNum));
792 bb.writeShort(U16.t(message.actorKey));
793 bb.writeShort(U16.t(message.partnerSysPriority));
794 message.partnerSysMac.write6Bytes(bb);
795 bb.writeShort(U16.t(message.partnerPortPriority));
796 bb.writeShort(U16.t(message.partnerPortNum));
797 bb.writeShort(U16.t(message.partnerKey));
798
799
800 }
801 }
802
803 @Override
804 public String toString() {
805 StringBuilder b = new StringBuilder("OFBsnLacpConvergenceNotifVer13(");
806 b.append("xid=").append(xid);
807 b.append(", ");
808 b.append("convergenceStatus=").append(convergenceStatus);
809 b.append(", ");
810 b.append("portNo=").append(portNo);
811 b.append(", ");
812 b.append("actorSysPriority=").append(actorSysPriority);
813 b.append(", ");
814 b.append("actorSysMac=").append(actorSysMac);
815 b.append(", ");
816 b.append("actorPortPriority=").append(actorPortPriority);
817 b.append(", ");
818 b.append("actorPortNum=").append(actorPortNum);
819 b.append(", ");
820 b.append("actorKey=").append(actorKey);
821 b.append(", ");
822 b.append("partnerSysPriority=").append(partnerSysPriority);
823 b.append(", ");
824 b.append("partnerSysMac=").append(partnerSysMac);
825 b.append(", ");
826 b.append("partnerPortPriority=").append(partnerPortPriority);
827 b.append(", ");
828 b.append("partnerPortNum=").append(partnerPortNum);
829 b.append(", ");
830 b.append("partnerKey=").append(partnerKey);
831 b.append(")");
832 return b.toString();
833 }
834
835 @Override
836 public boolean equals(Object obj) {
837 if (this == obj)
838 return true;
839 if (obj == null)
840 return false;
841 if (getClass() != obj.getClass())
842 return false;
843 OFBsnLacpConvergenceNotifVer13 other = (OFBsnLacpConvergenceNotifVer13) obj;
844
845 if( xid != other.xid)
846 return false;
847 if( convergenceStatus != other.convergenceStatus)
848 return false;
849 if (portNo == null) {
850 if (other.portNo != null)
851 return false;
852 } else if (!portNo.equals(other.portNo))
853 return false;
854 if( actorSysPriority != other.actorSysPriority)
855 return false;
856 if (actorSysMac == null) {
857 if (other.actorSysMac != null)
858 return false;
859 } else if (!actorSysMac.equals(other.actorSysMac))
860 return false;
861 if( actorPortPriority != other.actorPortPriority)
862 return false;
863 if( actorPortNum != other.actorPortNum)
864 return false;
865 if( actorKey != other.actorKey)
866 return false;
867 if( partnerSysPriority != other.partnerSysPriority)
868 return false;
869 if (partnerSysMac == null) {
870 if (other.partnerSysMac != null)
871 return false;
872 } else if (!partnerSysMac.equals(other.partnerSysMac))
873 return false;
874 if( partnerPortPriority != other.partnerPortPriority)
875 return false;
876 if( partnerPortNum != other.partnerPortNum)
877 return false;
878 if( partnerKey != other.partnerKey)
879 return false;
880 return true;
881 }
882
883 @Override
884 public int hashCode() {
885 final int prime = 31;
886 int result = 1;
887
888 result = prime * (int) (xid ^ (xid >>> 32));
889 result = prime * result + convergenceStatus;
890 result = prime * result + ((portNo == null) ? 0 : portNo.hashCode());
891 result = prime * result + actorSysPriority;
892 result = prime * result + ((actorSysMac == null) ? 0 : actorSysMac.hashCode());
893 result = prime * result + actorPortPriority;
894 result = prime * result + actorPortNum;
895 result = prime * result + actorKey;
896 result = prime * result + partnerSysPriority;
897 result = prime * result + ((partnerSysMac == null) ? 0 : partnerSysMac.hashCode());
898 result = prime * result + partnerPortPriority;
899 result = prime * result + partnerPortNum;
900 result = prime * result + partnerKey;
901 return result;
902 }
903
904}