Fixed missing tlvs from base parser. 81/5281/1
authorDana Kutenicsova <dkutenic@cisco.com>
Wed, 12 Feb 2014 10:24:37 +0000 (11:24 +0100)
committerDana Kutenicsova <dkutenic@cisco.com>
Wed, 12 Feb 2014 10:24:37 +0000 (11:24 +0100)
Change-Id: I5ce104023fec836925cd99149a228461f99ab5f8
Signed-off-by: Dana Kutenicsova <dkutenic@cisco.com>
pcep/ietf-stateful02/src/main/java/org/opendaylight/protocol/pcep/crabbe/initiated00/PCEPOpenObjectParser.java
pcep/ietf-stateful02/src/main/java/org/opendaylight/protocol/pcep/ietf/stateful02/Stateful02LspaObjectParser.java
pcep/ietf-stateful02/src/main/java/org/opendaylight/protocol/pcep/ietf/stateful02/Stateful02OpenObjectParser.java
pcep/ietf-stateful07/src/main/java/org/opendaylight/protocol/pcep/ietf/stateful07/Stateful07LspaObjectParser.java
pcep/ietf-stateful07/src/main/java/org/opendaylight/protocol/pcep/ietf/stateful07/Stateful07OpenObjectParser.java

index 89f13ae8dceb818a9854bc9c11c856f3cfd9be62..a1df09163be8176d1ba5567357be8788e9c1b49e 100644 (file)
@@ -61,17 +61,9 @@ public final class PCEPOpenObjectParser extends Stateful02OpenObjectParser {
                if (tlvs == null) {
                        return new byte[0];
                }
-               super.serializeTlvs(tlvs);
-               int finalLength = 0;
-               byte[] statefulBytes = null;
+               final byte[] prev = super.serializeTlvs(tlvs);
+               int finalLength = prev.length;
                byte[] cleanupBytes = null;
-               if (tlvs.getAugmentation(Tlvs2.class) != null) {
-                       final Tlvs2 statefulTlvs = tlvs.getAugmentation(Tlvs2.class);
-                       if (statefulTlvs.getStateful() != null) {
-                               statefulBytes = serializeTlv(statefulTlvs.getStateful());
-                               finalLength += statefulBytes.length;
-                       }
-               }
                if (tlvs.getAugmentation(Tlvs1.class) != null) {
                        final Tlvs1 cleanupTlv = tlvs.getAugmentation(Tlvs1.class);
                        if (cleanupTlv.getLspCleanup() != null) {
@@ -79,13 +71,9 @@ public final class PCEPOpenObjectParser extends Stateful02OpenObjectParser {
                                finalLength += cleanupBytes.length;
                        }
                }
-
-               int offset = 0;
                final byte[] result = new byte[finalLength];
-               if (statefulBytes != null) {
-                       ByteArray.copyWhole(statefulBytes, result, offset);
-                       offset += statefulBytes.length;
-               }
+               ByteArray.copyWhole(prev, result, 0);
+               int offset = prev.length;
                if (cleanupBytes != null) {
                        ByteArray.copyWhole(cleanupBytes, result, offset);
                        offset += cleanupBytes.length;
index d13da63d489114b8a2d8be020f753f15cac8a9da..36baeb4f003d63056ebc9c8503088f13c30f7ca3 100644 (file)
@@ -48,8 +48,8 @@ public final class Stateful02LspaObjectParser extends PCEPLspaObjectParser {
                if (tlvs == null) {
                        return new byte[0];
                }
-               super.serializeTlvs(tlvs);
-               int finalLength = 0;
+               final byte[] prev = super.serializeTlvs(tlvs);
+               int finalLength = prev.length;
                byte[] nameBytes = null;
                if (tlvs.getAugmentation(Tlvs2.class) != null) {
                        final Tlvs2 nameTlvs = tlvs.getAugmentation(Tlvs2.class);
@@ -58,8 +58,9 @@ public final class Stateful02LspaObjectParser extends PCEPLspaObjectParser {
                                finalLength += nameBytes.length;
                        }
                }
-               int offset = 0;
                final byte[] result = new byte[finalLength];
+               ByteArray.copyWhole(prev, result, 0);
+               int offset = prev.length;
                if (nameBytes != null) {
                        ByteArray.copyWhole(nameBytes, result, offset);
                        offset += nameBytes.length;
index 592b26955109ccefd848477de968af3272c54359..aa56c5837be98cbb4c47489c3dc3785812bc5028 100644 (file)
@@ -54,8 +54,8 @@ public class Stateful02OpenObjectParser extends PCEPOpenObjectParser {
                if (tlvs == null) {
                        return new byte[0];
                }
-               super.serializeTlvs(tlvs);
-               int finalLength = 0;
+               final byte[] prev = super.serializeTlvs(tlvs);
+               int finalLength = prev.length;
                byte[] statefulBytes = null;
                byte[] nodeIdBytes = null;
                if (tlvs.getAugmentation(Tlvs2.class) != null) {
@@ -70,8 +70,9 @@ public class Stateful02OpenObjectParser extends PCEPOpenObjectParser {
                        }
                }
 
-               int offset = 0;
                final byte[] result = new byte[finalLength];
+               ByteArray.copyWhole(prev, result, 0);
+               int offset = prev.length;
                if (statefulBytes != null) {
                        ByteArray.copyWhole(statefulBytes, result, offset);
                        offset += statefulBytes.length;
index f977e6b0f6d2612722bce074867342399c2e9f7e..4193ac057b432d5e2dcc6c55c2368d4de523874f 100644 (file)
@@ -48,8 +48,8 @@ public final class Stateful07LspaObjectParser extends PCEPLspaObjectParser {
                if (tlvs == null) {
                        return new byte[0];
                }
-               super.serializeTlvs(tlvs);
-               int finalLength = 0;
+               final byte[] prev = super.serializeTlvs(tlvs);
+               int finalLength = prev.length;
                byte[] nameBytes = null;
                if (tlvs.getAugmentation(Tlvs2.class) != null) {
                        final Tlvs2 nameTlvs = tlvs.getAugmentation(Tlvs2.class);
@@ -58,8 +58,9 @@ public final class Stateful07LspaObjectParser extends PCEPLspaObjectParser {
                                finalLength += nameBytes.length;
                        }
                }
-               int offset = 0;
                final byte[] result = new byte[finalLength];
+               ByteArray.copyWhole(prev, result, 0);
+               int offset = prev.length;
                if (nameBytes != null) {
                        ByteArray.copyWhole(nameBytes, result, offset);
                        offset += nameBytes.length;
index 95b1e6c7abf2ee873c75f57a7c23db725b0304bd..d4e93fd26c73a6a7a6172c9174c7e502d3ee7f73 100644 (file)
@@ -48,8 +48,8 @@ public class Stateful07OpenObjectParser extends PCEPOpenObjectParser {
                if (tlvs == null) {
                        return new byte[0];
                }
-               super.serializeTlvs(tlvs);
-               int finalLength = 0;
+               final byte[] prev = super.serializeTlvs(tlvs);
+               int finalLength = prev.length;
                byte[] ofListBytes = null;
                byte[] statefulBytes = null;
                if (tlvs.getOfList() != null) {
@@ -63,9 +63,9 @@ public class Stateful07OpenObjectParser extends PCEPOpenObjectParser {
                                finalLength += statefulBytes.length;
                        }
                }
-
-               int offset = 0;
                final byte[] result = new byte[finalLength];
+               ByteArray.copyWhole(prev, result, 0);
+               int offset = prev.length;
                if (ofListBytes != null) {
                        ByteArray.copyWhole(ofListBytes, result, offset);
                        offset += ofListBytes.length;