public RequestCase build() { return new RequestCaseImpl(this); }
public SessionCase build() { return new SessionCaseImpl(this); }
public RequestCaseBuilder addAugmentation(java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase>> augmentationType, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase> augmentation) { if (augmentation == null) { return removeAugmentation(augmentationType); } if (!(this.augmentation instanceof HashMap)) { this.augmentation = new HashMap<>(); } this.augmentation.put(augmentationType, augmentation); return this; }
public static Message createErrorMsg(final PCEPErrors e, final Optional<Rp> rp) { final PcerrMessageBuilder msgBuilder = new PcerrMessageBuilder(); if (rp.isPresent()) { new RequestCaseBuilder().setRequest(new RequestBuilder().setRps(Collections.singletonList(new RpsBuilder().setRp( rp.get()).build())).build()).build(); } return new PcerrBuilder().setPcerrMessage( msgBuilder.setErrors(Arrays.asList(new ErrorsBuilder().setErrorObject( new ErrorObjectBuilder().setType(e.getErrorType()).setValue( e.getErrorValue()).build()).build())).build()).build(); }
if (obj instanceof Rp) { final Rp o = ((Rp) obj); requestParameters.add(new RpsBuilder().setRp(o).build()); return State.RP_IN; b.setErrorType(new SessionCaseBuilder().setSession(new SessionBuilder().setOpen((Open) obj).build()).build()); return State.OPEN_IN;
public static Message createErrorMessage(final PCEPErrors e, final Open t) { final PcerrBuilder errMessageBuilder = new PcerrBuilder(); final ErrorObject err = new ErrorObjectBuilder().setType(e.getErrorType()).setValue(e.getErrorValue()).build(); if (t == null) { return errMessageBuilder.setPcerrMessage( new PcerrMessageBuilder().setErrors(Arrays.asList(new ErrorsBuilder().setErrorObject(err).build())).build()).build(); } else { final ErrorType type = new SessionCaseBuilder().setSession(new SessionBuilder().setOpen(t).build()).build(); return errMessageBuilder.setPcerrMessage( new PcerrMessageBuilder().setErrors(Arrays.asList(new ErrorsBuilder().setErrorObject(err).build())).setErrorType(type).build()).build(); } } }
@Override public void serializeMessage(final Message message, final ByteBuf out) { Preconditions.checkArgument(message instanceof PcerrMessage, "Wrong instance of Message. Passed instance of %s. Need PcerrMessage.", message.getClass()); final org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.PcerrMessage err = ((PcerrMessage) message).getPcerrMessage(); Preconditions.checkArgument(err.getErrors() != null && !err.getErrors().isEmpty(), "Errors should not be empty."); final ByteBuf buffer = Unpooled.buffer(); serializeCases(err, buffer); for (final Errors e : err.getErrors()) { serializeObject(e.getErrorObject(), buffer); } if (err.getErrorType() instanceof SessionCase) { serializeObject(((SessionCase) err.getErrorType()).getSession().getOpen(), buffer); } MessageUtil.formatMessage(TYPE, buffer, out); }
/** * If needed, subclasses can override this method. */ protected void serializeCases(final org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.PcerrMessage err, final ByteBuf buffer) { if (err.getErrorType() instanceof RequestCase) { final List<Rps> rps = ((RequestCase) err.getErrorType()).getRequest().getRps(); for (final Rps r : rps) { serializeObject(r.getRp(), buffer); } } }
if (!Objects.equals(_session, other.getSession())) { return false; if (!e.getValue().equals(other.getAugmentation(e.getKey()))) { return false;
public SessionCaseBuilder(SessionCase base) { this._session = base.getSession(); if (base instanceof SessionCaseImpl) { SessionCaseImpl impl = (SessionCaseImpl) base; if (!impl.augmentation.isEmpty()) { this.augmentation = new HashMap<>(impl.augmentation); } } else if (base instanceof AugmentationHolder) { @SuppressWarnings("unchecked") AugmentationHolder<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase> casted =(AugmentationHolder<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase>) base; if (!casted.augmentations().isEmpty()) { this.augmentation = new HashMap<>(casted.augmentations()); } } }
if (!Objects.equals(_request, other.getRequest())) { return false; if (!e.getValue().equals(other.getAugmentation(e.getKey()))) { return false;
public RequestCaseBuilder(RequestCase base) { this._request = base.getRequest(); if (base instanceof RequestCaseImpl) { RequestCaseImpl impl = (RequestCaseImpl) base; if (!impl.augmentation.isEmpty()) { this.augmentation = new HashMap<>(impl.augmentation); } } else if (base instanceof AugmentationHolder) { @SuppressWarnings("unchecked") AugmentationHolder<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase> casted =(AugmentationHolder<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase>) base; if (!casted.augmentations().isEmpty()) { this.augmentation = new HashMap<>(casted.augmentations()); } } }
public SessionCaseBuilder addAugmentation(java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase>> augmentationType, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase> augmentation) { if (augmentation == null) { return removeAugmentation(augmentationType); } if (!(this.augmentation instanceof HashMap)) { this.augmentation = new HashMap<>(); } this.augmentation.put(augmentationType, augmentation); return this; }
private RequestCaseImpl(RequestCaseBuilder base) { this._request = base.getRequest(); switch (base.augmentation.size()) { case 0: this.augmentation = Collections.emptyMap(); break; case 1: final Map.Entry<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase>> e = base.augmentation.entrySet().iterator().next(); this.augmentation = Collections.<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.RequestCase>>singletonMap(e.getKey(), e.getValue()); break; default : this.augmentation = new HashMap<>(base.augmentation); } }
private SessionCaseImpl(SessionCaseBuilder base) { this._session = base.getSession(); switch (base.augmentation.size()) { case 0: this.augmentation = Collections.emptyMap(); break; case 1: final Map.Entry<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase>> e = base.augmentation.entrySet().iterator().next(); this.augmentation = Collections.<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.pcerr.message.error.type.SessionCase>>singletonMap(e.getKey(), e.getValue()); break; default : this.augmentation = new HashMap<>(base.augmentation); } }
return null; requestParameters.add(new RpsBuilder().setRp(o).build()); state = State.RP_IN; b.setErrorType(new RequestCaseBuilder().setRequest(new RequestBuilder().setRps(requestParameters).build()).build());
private boolean handleMessagePcerr(final Message msg) { final org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.pcerr.message.PcerrMessage err = ((Pcerr) msg).getPcerrMessage(); if (err.getErrorType() == null) { final ErrorObject obj = err.getErrors().get(0).getErrorObject(); LOG.warn("Unexpected error received from PCC: type {} value {}", obj.getType(), obj.getValue()); negotiationFailed(new IllegalStateException("Unexpected error received from PCC.")); this.state = State.IDLE; return true; } this.localPrefs = getRevisedProposal(((SessionCase) err.getErrorType()).getSession().getOpen()); if (this.localPrefs == null) { sendErrorMessage(PCEPErrors.PCERR_NON_ACC_SESSION_CHAR); negotiationFailed(new IllegalStateException("Peer suggested unacceptable retry proposal")); this.state = State.FINISHED; return true; } this.sendMessage(new OpenBuilder().setOpenMessage(new OpenMessageBuilder().setOpen(this.localPrefs).build()).build()); if (!this.remoteOK) { this.state = State.OPEN_WAIT; } scheduleFailTimer(); return true; }