/* * Mobicents, Communications Middleware * * Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as * indicated by the @author tags or express copyright attribution * statements applied by the authors. All third-party contributions are * distributed under license by Red Hat Middleware LLC. * * This copyrighted material is made available to anyone wishing to use, modify, * copy, or redistribute it subject to the terms and conditions of the GNU * Lesser General Public License, as published by the Free Software Foundation. * * 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 Lesser General Public License * for more details. * * * You should have received a copy of the GNU Lesser General Public License * along with this distribution; if not, write to: * Free Software Foundation, Inc. * 51 Franklin Street, Fifth Floor * * Boston, MA 02110-1301 USA */ package org.mobicents.slee.resource.diameter.ro.events.avp; import net.java.slee.resource.diameter.ro.events.avp.FileRepairSupported; import net.java.slee.resource.diameter.ro.events.avp.Mbms2g3gIndicator; import net.java.slee.resource.diameter.ro.events.avp.MbmsInformation; import net.java.slee.resource.diameter.ro.events.avp.MbmsServiceType; import net.java.slee.resource.diameter.ro.events.avp.MbmsUserServiceType; import org.mobicents.slee.resource.diameter.base.events.avp.GroupedAvpImpl; /** * MbmsInformationImpl.java * * <br>Project: mobicents * <br>12:22:57 PM Apr 12, 2009 * <br> * @author <a href="mailto:brainslog@gmail.com"> Alexandre Mendonca </a> */ public class MbmsInformationImpl extends GroupedAvpImpl implements MbmsInformation { /** * @param code * @param vendorId * @param mnd * @param prt * @param value */ public MbmsInformationImpl( int code, long vendorId, int mnd, int prt, byte[] value ) { super( code, vendorId, mnd, prt, value ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getFileRepairSupported() */ public FileRepairSupported getFileRepairSupported() { return (FileRepairSupported) getAvpAsEnumerated(DiameterRoAvpCodes.FILE_REPAIR_SUPPORTED, DiameterRoAvpCodes.TGPP_VENDOR_ID, FileRepairSupported.class); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getMbms2g3gIndicator() */ public Mbms2g3gIndicator getMbms2g3gIndicator() { return (Mbms2g3gIndicator) getAvpAsEnumerated(DiameterRoAvpCodes.MBMS_2G_3G_INDICATOR, DiameterRoAvpCodes.TGPP_VENDOR_ID, Mbms2g3gIndicator.class); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getMbmsServiceAreas() */ public String[] getMbmsServiceAreas() { return getAvpsAsOctetString(DiameterRoAvpCodes.MBMS_SERVICE_AREA, DiameterRoAvpCodes.TGPP_VENDOR_ID); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getMbmsServiceType() */ public MbmsServiceType getMbmsServiceType() { return (MbmsServiceType) getAvpAsEnumerated(DiameterRoAvpCodes.MBMS_SERVICE_TYPE, DiameterRoAvpCodes.TGPP_VENDOR_ID, MbmsServiceType.class); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getMbmsSessionIdentity() */ public String getMbmsSessionIdentity() { return getAvpAsOctetString(DiameterRoAvpCodes.MBMS_SESSION_IDENTITY, DiameterRoAvpCodes.TGPP_VENDOR_ID); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getMbmsUserServiceType() */ public MbmsUserServiceType getMbmsUserServiceType() { return (MbmsUserServiceType) getAvpAsEnumerated(DiameterRoAvpCodes.MBMS_USER_SERVICE_TYPE, DiameterRoAvpCodes.TGPP_VENDOR_ID, MbmsUserServiceType.class); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getRai() */ public String getRai() { return getAvpAsOctetString(DiameterRoAvpCodes.RAI, DiameterRoAvpCodes.TGPP_VENDOR_ID); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getRequiredMbmsBearerCapabilities() */ public String getRequiredMbmsBearerCapabilities() { return getAvpAsOctetString(DiameterRoAvpCodes.REQUIRED_MBMS_BEARER_CAPABILITIES, DiameterRoAvpCodes.TGPP_VENDOR_ID); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#getTmgi() */ public String getTmgi() { return getAvpAsOctetString(DiameterRoAvpCodes.TMGI, DiameterRoAvpCodes.TGPP_VENDOR_ID); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasFileRepairSupported() */ public boolean hasFileRepairSupported() { return hasAvp( DiameterRoAvpCodes.FILE_REPAIR_SUPPORTED, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasMbms2g3gIndicator() */ public boolean hasMbms2g3gIndicator() { return hasAvp( DiameterRoAvpCodes.MBMS_2G_3G_INDICATOR, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasMbmsServiceType() */ public boolean hasMbmsServiceType() { return hasAvp( DiameterRoAvpCodes.MBMS_SERVICE_TYPE, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasMbmsSessionIdentity() */ public boolean hasMbmsSessionIdentity() { return hasAvp( DiameterRoAvpCodes.MBMS_SESSION_IDENTITY, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasMbmsUserServiceType() */ public boolean hasMbmsUserServiceType() { return hasAvp( DiameterRoAvpCodes.MBMS_USER_SERVICE_TYPE, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasRai() */ public boolean hasRai() { return hasAvp( DiameterRoAvpCodes.RAI, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasRequiredMbmsBearerCapabilities() */ public boolean hasRequiredMbmsBearerCapabilities() { return hasAvp( DiameterRoAvpCodes.REQUIRED_MBMS_BEARER_CAPABILITIES, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#hasTmgi() */ public boolean hasTmgi() { return hasAvp( DiameterRoAvpCodes.TMGI, DiameterRoAvpCodes.TGPP_VENDOR_ID ); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setFileRepairSupported(net.java.slee.resource.diameter.ro.events.avp.FileRepairSupported) */ public void setFileRepairSupported( FileRepairSupported fileRepairSupported ) { addAvp(DiameterRoAvpCodes.FILE_REPAIR_SUPPORTED, DiameterRoAvpCodes.TGPP_VENDOR_ID, fileRepairSupported.getValue()); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setMbms2g3gIndicator(java.lang.String) */ public void setMbms2g3gIndicator( Mbms2g3gIndicator mbms2g3gIndicator ) { addAvp(DiameterRoAvpCodes.MBMS_2G_3G_INDICATOR, DiameterRoAvpCodes.TGPP_VENDOR_ID, mbms2g3gIndicator.getValue()); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setMbmsServiceArea(java.lang.String) */ public void setMbmsServiceArea( String mbmsServiceArea ) { addAvp(DiameterRoAvpCodes.MBMS_SERVICE_AREA, DiameterRoAvpCodes.TGPP_VENDOR_ID, mbmsServiceArea); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setMbmsServiceAreas(String[]) */ public void setMbmsServiceAreas( String[] mbmsServiceAreas ) { for(String mbmsServiceArea : mbmsServiceAreas) { setMbmsServiceArea(mbmsServiceArea); } } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setMbmsServiceType(java.lang.String) */ public void setMbmsServiceType( MbmsServiceType mbmsServiceType ) { addAvp(DiameterRoAvpCodes.MBMS_SERVICE_TYPE, DiameterRoAvpCodes.TGPP_VENDOR_ID, mbmsServiceType.getValue()); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setMbmsSessionIdentity(java.lang.String) */ public void setMbmsSessionIdentity( String mbmsSessionIdentity ) { addAvp(DiameterRoAvpCodes.MBMS_SESSION_IDENTITY, DiameterRoAvpCodes.TGPP_VENDOR_ID, mbmsSessionIdentity); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setMbmsUserServiceType(net.java.slee.resource.diameter.ro.events.avp.MbmsUserServiceType) */ public void setMbmsUserServiceType( MbmsUserServiceType mbmsUserServiceType ) { addAvp(DiameterRoAvpCodes.MBMS_USER_SERVICE_TYPE, DiameterRoAvpCodes.TGPP_VENDOR_ID, mbmsUserServiceType.getValue()); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setRai(java.lang.String) */ public void setRai( String rai ) { addAvp(DiameterRoAvpCodes.RAI, DiameterRoAvpCodes.TGPP_VENDOR_ID, rai); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setRequiredMbmsBearerCapabilities(java.lang.String) */ public void setRequiredMbmsBearerCapabilities( String requiredMbmsBearerCapabilities ) { addAvp(DiameterRoAvpCodes.REQUIRED_MBMS_BEARER_CAPABILITIES, DiameterRoAvpCodes.TGPP_VENDOR_ID, requiredMbmsBearerCapabilities); } /* (non-Javadoc) * @see net.java.slee.resource.diameter.ro.events.avp.MbmsInformation#setTmgi(java.lang.String) */ public void setTmgi( String tmgi ) { addAvp(DiameterRoAvpCodes.TMGI, DiameterRoAvpCodes.TGPP_VENDOR_ID, tmgi); } }