public boolean isValid() { // One of Acct-Application-Id and Vendor-Specific-Application-Id AVPs // MUST be present. If the Vendor-Specific-Application-Id grouped AVP // is present, it must have an Acct-Application-Id inside. if (!this.message.isRequest()) { return false; } else if (!this.hasAccountingRealtimeRequired()) { if (!this.hasVendorSpecificApplicationId()) { return false; } else { if (this.getVendorSpecificApplicationId().getAcctApplicationId() == -1) { return false; } } } return true; }
/** * Create Event object from a JDiameter message (request or answer) * * @return a DiameterMessage object wrapping the request/answer * @throws OperationNotSupportedException */ private DiameterMessage createEvent(Message message) { if (message == null) { throw new NullPointerException("Message argument cannot be null while creating event."); } int commandCode = message.getCommandCode(); if (message.isError()) { return new ErrorAnswerImpl(message); } boolean isRequest = message.isRequest(); switch (commandCode) { case RoCreditControlRequest.commandCode: // CCR/CCA return isRequest ? new RoCreditControlRequestImpl(message) : new RoCreditControlAnswerImpl(message); case AbortSessionAnswer.commandCode: // ASR/ASA return isRequest ? new AbortSessionRequestImpl(message) : new AbortSessionAnswerImpl(message); case SessionTerminationAnswer.commandCode: // STR/STA return isRequest ? new SessionTerminationRequestImpl(message) : new SessionTerminationAnswerImpl(message); case ReAuthAnswer.commandCode: // RAR/RAA return isRequest ? new ReAuthRequestImpl(message) : new ReAuthAnswerImpl(message); case AccountingAnswer.commandCode: // ACR/ACA return isRequest ? new AccountingRequestImpl(message) : new AccountingAnswerImpl(message); default: return new ExtensionDiameterMessageImpl(message); } }
/** * Create Event object from a JDiameter message (request or answer) * * @return a DiameterMessage object wrapping the request/answer * @throws OperationNotSupportedException */ private DiameterMessage createEvent(Message message) { if (message == null) { throw new NullPointerException("Message argument cannot be null while creating event."); } int commandCode = message.getCommandCode(); if (message.isError()) { return new ErrorAnswerImpl(message); } boolean isRequest = message.isRequest(); switch (commandCode) { case RoCreditControlRequest.commandCode: // CCR/CCA return isRequest ? new RoCreditControlRequestImpl(message) : new RoCreditControlAnswerImpl(message); case AbortSessionAnswer.commandCode: // ASR/ASA return isRequest ? new AbortSessionRequestImpl(message) : new AbortSessionAnswerImpl(message); case SessionTerminationAnswer.commandCode: // STR/STA return isRequest ? new SessionTerminationRequestImpl(message) : new SessionTerminationAnswerImpl(message); case ReAuthAnswer.commandCode: // RAR/RAA return isRequest ? new ReAuthRequestImpl(message) : new ReAuthAnswerImpl(message); case AccountingAnswer.commandCode: // ACR/ACA return isRequest ? new AccountingRequestImpl(message) : new AccountingAnswerImpl(message); default: return new ExtensionDiameterMessageImpl(message); } }
/** * Create Event object from a JDiameter message (request or answer). * * @return a DiameterMessage object wrapping the request/answer * @throws OperationNotSupportedException */ private DiameterMessage createEvent(final Message message) { if (message == null) { throw new NullPointerException("Message argument cannot be null while creating event."); } final int commandCode = message.getCommandCode(); if (message.isError()) { return new ErrorAnswerImpl(message); } final boolean isRequest = message.isRequest(); switch (commandCode) { case GxCreditControlRequest.commandCode: // CCR/CCA return isRequest ? new GxCreditControlRequestImpl(message) : new GxCreditControlAnswerImpl(message); case AbortSessionAnswer.commandCode: // ASR/ASA return isRequest ? new AbortSessionRequestImpl(message) : new AbortSessionAnswerImpl(message); case SessionTerminationAnswer.commandCode: // STR/STA return isRequest ? new SessionTerminationRequestImpl(message) : new SessionTerminationAnswerImpl(message); case GxReAuthAnswer.commandCode: // RAR/RAA return isRequest ? new GxReAuthRequestImpl(message) : new GxReAuthAnswerImpl(message); case AccountingAnswer.commandCode: // ACR/ACA return isRequest ? new AccountingRequestImpl(message) : new AccountingAnswerImpl(message); default: return new ExtensionDiameterMessageImpl(message); } }
public boolean isValid() { // One of Acct-Application-Id and Vendor-Specific-Application-Id AVPs // MUST be present. If the Vendor-Specific-Application-Id grouped AVP // is present, it must have an Acct-Application-Id inside. if (!this.message.isRequest()) { return false; } else if (!this.hasAccountingRealtimeRequired()) { if (!this.hasVendorSpecificApplicationId()) { return false; } else { if (this.getVendorSpecificApplicationId().getAcctApplicationId() == -1) { return false; } } } return true; }
return isRequest ? new AbortSessionRequestImpl(message) : new AbortSessionAnswerImpl(message); case AccountingRequest.commandCode: // ACR/ACA return isRequest ? new AccountingRequestImpl(message) : new AccountingAnswerImpl(message); case CapabilitiesExchangeRequest.commandCode: // CER/CEA return isRequest ? new CapabilitiesExchangeRequestImpl(message) : new CapabilitiesExchangeAnswerImpl(message);
return isRequest ? new AbortSessionRequestImpl(message) : new AbortSessionAnswerImpl(message); case AccountingRequest.commandCode: // ACR/ACA return isRequest ? new AccountingRequestImpl(message) : new AccountingAnswerImpl(message); case CapabilitiesExchangeRequest.commandCode: // CER/CEA return isRequest ? new CapabilitiesExchangeRequestImpl(message) : new CapabilitiesExchangeAnswerImpl(message);
break; case Message.ACCOUNTING_REQUEST: diamMessage = creatingRequest ? new AccountingRequestImpl(msg) : new AccountingAnswerImpl(msg); break; case Message.CAPABILITIES_EXCHANGE_REQUEST: