/* * TeleStax, Open Source Cloud Communications Copyright 2012. * and individual contributors * by the @authors tag. See the copyright.txt in the distribution for a * full listing of individual contributors. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.mobicents.protocols.ss7.tools.simulator.level3; import javax.management.MBeanAttributeInfo; import javax.management.MBeanInfo; import javax.management.MBeanOperationInfo; import javax.management.MBeanParameterInfo; import javax.management.NotCompliantMBeanException; import javax.management.StandardMBean; import org.mobicents.protocols.ss7.tools.simulator.common.AddressNatureType; /** * * @author sergey vetyutnev * */ public class MapManStandardMBean extends StandardMBean { public MapManStandardMBean(MapMan impl, Class<MapManMBean> intf) throws NotCompliantMBeanException { super(impl, intf); } @Override public MBeanInfo getMBeanInfo() { MBeanAttributeInfo[] attributes = new MBeanAttributeInfo[] { // new MBeanAttributeInfo("LocalSsn", int.class.getName(), "Local Ssn", true, true, false), // new MBeanAttributeInfo("RemoteSsn", int.class.getName(), "Remote Ssn", true, true, false), new MBeanAttributeInfo("RemoteAddressDigits", String.class.getName(), "Remote address digits. If empty ROUTING_BASED_ON_DPC_AND_SSN is used for CalledPartyAddress (remoteSpc from SCCP), " + "if not empty ROUTING_BASED_ON_GLOBAL_TITLE is used (address and Ssn from MAP)", true, true, false), new MBeanAttributeInfo("OrigReference", String.class.getName(), "Origination reference string", true, true, false), new MBeanAttributeInfo("OrigReferenceAddressNature", AddressNatureType.class.getName(), "Origination reference parameter: AddressNature", true, true, false), new MBeanAttributeInfo("OrigReferenceAddressNature_Value", String.class.getName(), "Origination reference parameter: AddressNature", true, false, false), new MBeanAttributeInfo("OrigReferenceNumberingPlan", NumberingPlanMapType.class.getName(), "Origination reference parameter: NumberingPlan", true, true, false), new MBeanAttributeInfo("OrigReferenceNumberingPlan_Value", String.class.getName(), "Origination reference parameter: NumberingPlan", true, false, false), new MBeanAttributeInfo("DestReference", String.class.getName(), "Destination reference string", true, true, false), new MBeanAttributeInfo("DestReferenceAddressNature", AddressNatureType.class.getName(), "Destination reference parameter: AddressNature", true, true, false), new MBeanAttributeInfo("DestReferenceAddressNature_Value", String.class.getName(), "Destination reference parameter: AddressNature", true, false, false), new MBeanAttributeInfo("DestReferenceNumberingPlan", NumberingPlanMapType.class.getName(), "Destination reference parameter: NumberingPlan", true, true, false), new MBeanAttributeInfo("DestReferenceNumberingPlan_Value", String.class.getName(), "Destination reference parameter: NumberingPlan", true, false, false), }; MBeanParameterInfo[] signString = new MBeanParameterInfo[] { new MBeanParameterInfo("val", String.class.getName(), "Index number or value") }; MBeanOperationInfo[] operations = new MBeanOperationInfo[] { new MBeanOperationInfo( "putOrigReferenceAddressNature", "Origination reference parameter: AddressNature: " + "0:unknown,1:international_number,2:national_significant_number,3:network_specific_number,4:subscriber_number,5:reserved,6:abbreviated_number,7:reserved_for_extension", signString, Void.TYPE.getName(), MBeanOperationInfo.ACTION), new MBeanOperationInfo( "putOrigReferenceNumberingPlan", "Origination reference reference parameter: NumberingPlan: " + "0:unknown,1:ISDN,2:spare_2,3:data,4:telex,5:spare_5,6:land_mobile,7:spare_7,8:national,9:private_plan,15:reserved", signString, Void.TYPE.getName(), MBeanOperationInfo.ACTION), new MBeanOperationInfo( "putDestReferenceAddressNature", "Destination reference parameter: AddressNature: " + "0:unknown,1:international_number,2:national_significant_number,3:network_specific_number,4:subscriber_number,5:reserved,6:abbreviated_number,7:reserved_for_extension", signString, Void.TYPE.getName(), MBeanOperationInfo.ACTION), new MBeanOperationInfo( "putDestReferenceNumberingPlan", "Destination reference parameter: NumberingPlan: " + "0:unknown,1:ISDN,2:spare_2,3:data,4:telex,5:spare_5,6:land_mobile,7:spare_7,8:national,9:private_plan,15:reserved", signString, Void.TYPE.getName(), MBeanOperationInfo.ACTION), }; return new MBeanInfo(MapMan.class.getName(), "Map Management", attributes, null, operations, null); } }