public synchronized String [ ] getUsageParameterSets ( SbbID sbbId ) throws NullPointerException , UnrecognizedSbbException , InvalidArgumentException , ManagementException { if ( sbbId == null ) throw new NullPointerException ( "Sbb ID is null!" ) ; // get the sbb component SbbComponent sbbComponent = sleeContainer . getComponentRepository ( ) . getComponentByID ( sbbId ) ; if ( sbbComponent == null ) { throw new UnrecognizedSbbException ( sbbId . toString ( ) ) ; } else { if ( sbbComponent . getUsageParametersInterface ( ) == null ) { throw new InvalidArgumentException ( "no usage parameter interface for " + sbbId ) ; } } // get service component and check if the sbb belongs to the service ServiceComponent serviceComponent = sleeContainer . getComponentRepository ( ) . getComponentByID ( getService ( ) ) ; if ( ! serviceComponent . getSbbIDs ( sleeContainer . getComponentRepository ( ) ) . contains ( sbbId ) ) { throw new UnrecognizedSbbException ( sbbId . toString ( ) + " is not part of " + getService ( ) ) ; } Set < String > resultSet = new HashSet < String > ( ) ; for ( UsageMBeanImpl usageMBeanImpl : usageMBeans . values ( ) ) { if ( ( ( SbbNotification ) usageMBeanImpl . getNotificationSource ( ) ) . getSbb ( ) . equals ( sbbId ) ) { String name = usageMBeanImpl . getUsageParameterSet ( ) ; if ( name != null ) { resultSet . add ( name ) ; } } } return resultSet . toArray ( new String [ resultSet . size ( ) ] ) ; }
This method returns a list containing the names of the named SBB usage parameter sets that belong to the SBB specified by the sbbID argument and the Service represented by the ServiceUsageMBean object .