public static HexString getDefaultInstance(String defaultValue) { return new HexString(defaultValue); }
public TagType(HexString _hexString) { super(); this._hexString = _hexString; this._uint32 = null; this._value = _hexString.getValue().toString().toCharArray(); }
@ConstructorProperties("value") public HexString(java.lang.String _value) { if (_value != null) { check_valueLength(_value); } Preconditions.checkNotNull(_value, "Supplied value may not be null"); for (Pattern p : patterns) { Preconditions.checkArgument(p.matcher(_value).matches(), "Supplied value \"%s\" does not match required pattern \"%s\"", _value, p); } this._value = _value; }
@Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((_uint32 == null) ? 0 : _uint32.hashCode()); result = prime * result + ((_hexString == null) ? 0 : _hexString.hashCode()); result = prime * result + ((_value == null) ? 0 : Arrays.hashCode(_value)); return result; }
return false; } else if(!_hexString.equals(other._hexString)) { return false;
public static HexString getDefaultInstance(String defaultValue) { return new HexString(defaultValue); }
/** * Return a String representing the value of this union. * * @return String representation of this union's value. */ public String stringValue() { if (_string != null) { return _string; } if (_hexString != null) { return _hexString.getValue().toString(); } throw new IllegalStateException("No value assinged"); }
@ConstructorProperties("value") public HexString(String _value) { if (_value != null) { check_valueLength(_value); } Objects.requireNonNull(_value, "Supplied value may not be null"); CodeHelpers.checkPattern(_value, patterns, regexes); this._value = _value; }
public static HexString getDefaultInstance(String defaultValue) { return new HexString(defaultValue); }
/** * Return a String representing the value of this union. * * @return String representation of this union's value. */ public String stringValue() { if (_string != null) { return _string; } if (_hexString != null) { return _hexString.getValue().toString(); } throw new IllegalStateException("No value assinged"); }
public static HexString getDefaultInstance(String defaultValue) { return new HexString(defaultValue); }
default byte[] getBinaryVector(final HexString hexString) { return DatatypeConverter.parseHexBinary(hexString.getValue().replace(":", "")); } }
@Nonnull @Override public List<ClassifySessionKey> getAllIds(@Nonnull final InstanceIdentifier<ClassifySession> id, @Nonnull final ReadContext ctx) throws ReadFailedException { LOG.debug("Reading list of keys for classify sessions: {}", id); final ClassifySessionDetailsReplyDump classifySessionDump = dumpClassifySessions(id, ctx); if (classifySessionDump != null && classifySessionDump.classifySessionDetails != null) { return classifySessionDump.classifySessionDetails.stream() .map(detail -> new ClassifySessionKey(new HexString(printHexBinary(detail.match)))) .collect(Collectors.toList()); } else { return Collections.emptyList(); } } }
private static ClassifyAddDelSession getClassifyAddDelSessionRequest(final boolean isAdd, @Nonnull final ClassifySession classifySession, final int tableIndex, final int hitNextIndex, final int opaqueIndex) { ClassifyAddDelSession request = new ClassifyAddDelSession(); request.isAdd = booleanToByte(isAdd); request.tableIndex = tableIndex; request.hitNextIndex = hitNextIndex; request.opaqueIndex = opaqueIndex; // default 0: request.advance = classifySession.getAdvance(); request.match = DatatypeConverter.parseHexBinary(classifySession.getMatch().getValue().replace(":", "")); return request; }
@Nonnull @Override public List<ClassifySessionKey> getAllIds(@Nonnull final InstanceIdentifier<ClassifySession> id, @Nonnull final ReadContext ctx) throws ReadFailedException { LOG.debug("Reading list of keys for classify sessions: {}", id); final ClassifySessionDetailsReplyDump classifySessionDump = dumpClassifySessions(id, ctx); if (classifySessionDump != null && classifySessionDump.classifySessionDetails != null) { return classifySessionDump.classifySessionDetails.stream() .map(detail -> new ClassifySessionKey(new HexString(printHexBinary(detail.match)))) .collect(Collectors.toList()); } else { return Collections.emptyList(); } } }
private ClassifyAddDelTable getClassifyAddDelTableRequest(final boolean isAdd, final int tableIndex, @Nonnull final ClassifyTable table, final int missNextIndex, @Nonnull final MappingContext ctx) { final ClassifyAddDelTable request = new ClassifyAddDelTable(); request.isAdd = booleanToByte(isAdd); request.tableIndex = tableIndex; // mandatory, all u32 values are permitted: request.nbuckets = table.getNbuckets().intValue(); request.memorySize = table.getMemorySize().intValue(); request.skipNVectors = table.getSkipNVectors().intValue(); // mandatory request.missNextIndex = missNextIndex; final String nextTable = table.getNextTable(); if (isAdd && nextTable != null) { request.nextTableIndex = classifyTableContext.getTableIndex(nextTable, ctx); } else { request.nextTableIndex = ~0; // value not specified } request.mask = DatatypeConverter.parseHexBinary(table.getMask().getValue().replace(":", "")); checkArgument(request.mask.length % 16 == 0, "Number of mask bytes must be multiple of 16."); request.matchNVectors = request.mask.length / 16; return request; } }
builder.setMissNext(new VppNode(new VppNodeName("unknown"))); // TODO(HC2VPP-9): remove this workaround builder.setMask(new HexString(printHexBinary(reply.mask))); builder.setActiveSessions(UnsignedInts.toLong(reply.activeSessions));
@Override public void readCurrentAttributes(@Nonnull final InstanceIdentifier<ClassifySession> id, @Nonnull final ClassifySessionBuilder builder, @Nonnull final ReadContext ctx) throws ReadFailedException { LOG.debug("Reading attributes for classify session: {}", id); final ClassifySessionKey key = id.firstKeyOf(ClassifySession.class); checkArgument(key != null, "could not find ClassifySession key in {}", id); final ClassifySessionDetailsReplyDump classifySessionDump = dumpClassifySessions(id, ctx); final byte[] match = DatatypeConverter.parseHexBinary(key.getMatch().getValue().replace(":", "")); final Optional<ClassifySessionDetails> classifySession = findClassifySessionDetailsByMatch(classifySessionDump, match); if (classifySession.isPresent()) { final ClassifySessionDetails detail = classifySession.get(); builder.setHitNext( readVppNode(detail.tableId, detail.hitNextIndex, classifyTableContext, ctx.getMappingContext(), LOG).get()); if (detail.opaqueIndex != ~0) { // value is specified: builder.setOpaqueIndex(readOpaqueIndex(detail.tableId, detail.opaqueIndex, ctx.getMappingContext())); } builder.setAdvance(detail.advance); builder.setMatch(key.getMatch()); if (LOG.isTraceEnabled()) { LOG.trace("Attributes for classify session {} successfully read: {}", id, builder.build()); } } }
readVppNode(reply.tableId, reply.missNextIndex, classifyTableContext, ctx.getMappingContext(), LOG) .get()); builder.setMask(new HexString(printHexBinary(reply.mask))); builder.setActiveSessions(UnsignedInts.toLong(reply.activeSessions));
final byte[] match = DatatypeConverter.parseHexBinary(key.getMatch().getValue().replace(":", "")); final Optional<ClassifySessionDetails> classifySession = findClassifySessionDetailsByMatch(classifySessionDump, match);