X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fconcepts%2FFrontendType.java;h=2a2a5b2b30af2d26bd4c39e75844401611d32129;hp=95857e8393a1fd85e0146ab98b55f13650c99bbf;hb=refs%2Fchanges%2F73%2F85373%2F8;hpb=d63cb58db4227292de723345e9f26852846d235d diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/FrontendType.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/FrontendType.java index 95857e8393..2a2a5b2b30 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/FrontendType.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/FrontendType.java @@ -7,11 +7,13 @@ */ package org.opendaylight.controller.cluster.access.concepts; +import static com.google.common.base.Preconditions.checkArgument; +import static com.google.common.base.Verify.verifyNotNull; +import static java.util.Objects.requireNonNull; + import com.google.common.annotations.Beta; import com.google.common.base.MoreObjects; -import com.google.common.base.Preconditions; import com.google.common.base.Strings; -import com.google.common.base.Verify; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.DataInput; import java.io.DataOutput; @@ -21,7 +23,7 @@ import java.io.ObjectInput; import java.io.ObjectOutput; import java.nio.charset.StandardCharsets; import java.util.regex.Pattern; -import javax.annotation.RegEx; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.concepts.Identifier; import org.opendaylight.yangtools.concepts.WritableIdentifier; @@ -46,7 +48,7 @@ public final class FrontendType implements Comparable, WritableIde } Proxy(final byte[] serialized) { - this.serialized = Preconditions.checkNotNull(serialized); + this.serialized = requireNonNull(serialized); } @Override @@ -67,23 +69,23 @@ public final class FrontendType implements Comparable, WritableIde } } - @RegEx private static final String SIMPLE_STRING_REGEX = "^[a-zA-Z0-9-_.*+:=,!~';]+$"; private static final Pattern SIMPLE_STRING_PATTERN = Pattern.compile(SIMPLE_STRING_REGEX); private static final long serialVersionUID = 1L; - private final String name; + + private final @NonNull String name; @SuppressFBWarnings(value = "VO_VOLATILE_REFERENCE_TO_ARRAY", justification = "The array elements are non-volatile but we don't access them.") private volatile byte[] serialized; private FrontendType(final String name) { - this.name = Preconditions.checkNotNull(name); + this.name = requireNonNull(name); } FrontendType(final String name, final byte[] serialized) { this(name); - this.serialized = Verify.verifyNotNull(serialized); + this.serialized = verifyNotNull(serialized); } /** @@ -96,14 +98,14 @@ public final class FrontendType implements Comparable, WritableIde * @return A {@link FrontendType} instance * @throws IllegalArgumentException if the string is null, empty or contains invalid characters */ - public static FrontendType forName(final String name) { - Preconditions.checkArgument(!Strings.isNullOrEmpty(name)); - Preconditions.checkArgument(SIMPLE_STRING_PATTERN.matcher(name).matches(), + public static @NonNull FrontendType forName(final String name) { + checkArgument(!Strings.isNullOrEmpty(name)); + checkArgument(SIMPLE_STRING_PATTERN.matcher(name).matches(), "Supplied name %s does not patch pattern %s", name, SIMPLE_STRING_REGEX); return new FrontendType(name); } - public static FrontendType readFrom(final DataInput in) throws IOException { + public static @NonNull FrontendType readFrom(final DataInput in) throws IOException { final byte[] serialized = new byte[in.readInt()]; in.readFully(serialized); return new FrontendType(new String(serialized, StandardCharsets.UTF_8)); @@ -116,10 +118,16 @@ public final class FrontendType implements Comparable, WritableIde out.write(local); } - public String getName() { + public @NonNull String getName() { return name; } + public org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.cds.types.rev191024 + . @NonNull FrontendType toYang() { + return new org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.cds.types.rev191024 + .FrontendType(name); + } + @Override public int hashCode() { return name.hashCode();