X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-util%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Futil%2Fmessages%2FNetconfMessageFactory.java;h=9097da4d91d284c0eb53a3285295ab27724cd65a;hp=526708ab580238e34ba26a1c70a1d89289571ca6;hb=8c11d12db26f05afafe154fd1feed6c88fb04fa0;hpb=787e73665b11cd1040a1fb078c7a08d8edfa246b diff --git a/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/messages/NetconfMessageFactory.java b/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/messages/NetconfMessageFactory.java index 526708ab58..9097da4d91 100644 --- a/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/messages/NetconfMessageFactory.java +++ b/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/messages/NetconfMessageFactory.java @@ -29,7 +29,7 @@ import org.xml.sax.SAXException; import com.google.common.base.Charsets; import com.google.common.base.Optional; -import com.google.common.collect.Lists; +import com.google.common.collect.ImmutableList; /** * NetconfMessageFactory for (de)serializing DOM documents. @@ -37,6 +37,10 @@ import com.google.common.collect.Lists; public final class NetconfMessageFactory implements ProtocolMessageFactory { private static final Logger logger = LoggerFactory.getLogger(NetconfMessageFactory.class); + private static final List POSSIBLE_STARTS = ImmutableList.of( + "[".getBytes(Charsets.UTF_8), "\r\n[".getBytes(Charsets.UTF_8), "\n[".getBytes(Charsets.UTF_8)); + private static final List POSSIBLE_ENDS = ImmutableList.of( + "]\n".getBytes(Charsets.UTF_8), "]\r\n".getBytes(Charsets.UTF_8)); private final Optional clientId; @@ -74,8 +78,8 @@ public final class NetconfMessageFactory implements ProtocolMessageFactory possibleStarts = Lists.newArrayList("[", "\r\n[", "\n["); - for (String possibleStart : possibleStarts) { + for (byte[] possibleStart : POSSIBLE_STARTS) { int i = 0; - for (byte b : possibleStart.getBytes(Charsets.UTF_8)) { - if(bytes[i]!=b) + for (byte b : possibleStart) { + if(bytes[i] != b) break; return true;