All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.mobius.software.telco.protocols.diameter.commands.commons.CapabilitiesExchangeAnswer Maven / Gradle / Ivy

package com.mobius.software.telco.protocols.diameter.commands.commons;
/*
 * Mobius Software LTD
 * Copyright 2023, Mobius Software LTD and individual contributors
 * by the @authors tag.
 *
 * This program is free software: you can redistribute it and/or modify
 * under the terms of the GNU Affero General Public License as
 * published by the Free Software Foundation; either version 3 of
 * the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see 
 */

import java.net.InetAddress;
import java.util.List;

import com.mobius.software.telco.protocols.diameter.ApplicationIDs;
import com.mobius.software.telco.protocols.diameter.CommandCodes;
import com.mobius.software.telco.protocols.diameter.annotations.DiameterCommandDefinition;
import com.mobius.software.telco.protocols.diameter.commands.DiameterAnswer;
import com.mobius.software.telco.protocols.diameter.exceptions.MissingAvpException;
import com.mobius.software.telco.protocols.diameter.primitives.common.VendorSpecificApplicationId;

/**
*
* @author yulian oifa
*
*/

/*
 * The Capabilities-Exchange-Answer (CEA), indicated by the Command Code
   set to 257 and the Command Flags' 'R' bit cleared, is sent in
   response to a CER message.

   When Diameter is run over SCTP [RFC4960] or DTLS/SCTP [RFC6083],
   which allow connections to span multiple interfaces, hence, multiple
   IP addresses, the Capabilities-Exchange-Answer message MUST contain
   one Host-IP-Address AVP for each potential IP address that MAY be
   locally used when transmitting Diameter messages.

   Message Format

          ::= < Diameter Header: 257 >
                   { Result-Code }
                   { Origin-Host }
                   { Origin-Realm }
                1* { Host-IP-Address }
                   { Vendor-Id }
                   { Product-Name }
                   [ Origin-State-Id ]
                   [ Error-Message ]
                   [ Failed-AVP ]
                 * [ Supported-Vendor-Id ]
                 * [ Auth-Application-Id ]
                 * [ Inband-Security-Id ]
                 * [ Acct-Application-Id ]
                 * [ Vendor-Specific-Application-Id ]
                   [ Firmware-Revision ]
                 * [ AVP ]
 */
@DiameterCommandDefinition(applicationId = ApplicationIDs.COMMON, commandCode = CommandCodes.CAPABILITIES_EXCHANGE, request = false, proxyable = false, name="Capabilities-Exchange-Answer")
public interface CapabilitiesExchangeAnswer extends DiameterAnswer
{
	public List getHostIpAddress();
	
	void setHostIpAddress(List value) throws MissingAvpException;
	
	public Long getVendorId();
	
	void setVendorId(Long value) throws MissingAvpException;
	
	public String getProductName();
	
	void setProductName(String value) throws MissingAvpException;
	
	public List getSupportedVendorIds();
	
	void setSupportedVendorIds(List value);
	
	public List getAuthApplicationIds();
	
	void setAuthApplicationIds(List value);
	
	public List getAcctApplicationIds();
	
	void setAcctApplicationIds(List value);
	
	public List getInbandSecurityIds();
	
	void setInbandSecurityIds(List value);

	public List getVendorSpecificApplicationIds();
	
	void setVendorSpecificApplicationIds(List value);

	public Long getFirmwareRevision();
	
	void setFirmwareRevision(Long value);			
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy