container/profiles/src/main/java/org/mobicents/slee/container/management/jmx/ProfileProvisioningMBeanImpl.java
public Collection<ProfileID> getProfilesByStaticQuery(String profileTableName, String queryName, Object[] parameters) throws NullPointerException,
		UnrecognizedProfileTableNameException,
		UnrecognizedQueryNameException, InvalidArgumentException,
		AttributeTypeMismatchException, ManagementException {
	
		if (logger.isDebugEnabled()) {
			logger.debug("getProfilesByStaticQuery( profileTableName = "
					+ profileTableName + " , queryName = " + queryName
					+ " , parameters = " + Arrays.asList(parameters) + " )");
		}
		
	   if (queryName == null) {
			throw new NullPointerException("queryName is null");
		}
		
		boolean b = sleeTransactionManagement.requireTransaction();

		Collection<ProfileID> profileIDs = new ArrayList<ProfileID>();
		try {
			ProfileTableImpl profileTable = sleeProfileManagement.getProfileTable(profileTableName);
			if (!profileTable.getProfileSpecificationComponent().isSlee11()) {
				throw new UnsupportedOperationException("JAIN SLEE 1.1 Specs forbiddens the usage of this method on SLEE 1.0 Profile Tables");
			}
			for (ProfileEntity profileEntity : profileTable.getProfileSpecificationComponent().getProfileEntityFramework().getProfilesByStaticQuery( profileTableName, queryName, parameters )) {
				profileIDs.add(new ProfileID(profileEntity.getTableName(),profileEntity.getProfileName()));
			}
		} catch (NullPointerException e) {
			throw e;
		} catch (UnrecognizedProfileTableNameException e) {
			throw e;
		} catch (UnrecognizedQueryNameException e) {
			throw e;
		} catch (InvalidArgumentException e) {
			throw e;
		} catch (AttributeTypeMismatchException e) {
			throw e;
		} catch (Throwable e) {
			throw new ManagementException("Failed to obtain ProfileNames for ProfileTable: " + profileTableName, e);
		}
		finally {
			try {
				sleeTransactionManagement.requireTransactionEnd(b,false);	
			} catch (Throwable e) {
				throw new ManagementException(e.getMessage(),e);
			}
		}

		return profileIDs;
	}
public Collection<ProfileID> getProfilesByStaticQuery(String profileTableName, String queryName, Object[] parameters) throws NullPointerException,
		UnrecognizedProfileTableNameException,
		UnrecognizedQueryNameException, InvalidArgumentException,
		AttributeTypeMismatchException, ManagementException {
	
		if (logger.isDebugEnabled()) {
			logger.debug("getProfilesByStaticQuery( profileTableName = "
					+ profileTableName + " , queryName = " + queryName
					+ " , parameters = " + Arrays.asList(parameters) + " )");
		}
		
	   if (queryName == null) {
			throw new NullPointerException("queryName is null");
		}
		
		boolean b = sleeTransactionManagement.requireTransaction();

		Collection<ProfileID> profileIDs = new ArrayList<ProfileID>();
		try {
			ProfileTableImpl profileTable = sleeProfileManagement.getProfileTable(profileTableName);
			if (!profileTable.getProfileSpecificationComponent().isSlee11()) {
				throw new UnsupportedOperationException("JAIN SLEE 1.1 Specs forbiddens the usage of this method on SLEE 1.0 Profile Tables");
			}
			for (ProfileEntity profileEntity : profileTable.getProfileSpecificationComponent().getProfileEntityFramework().getProfilesByStaticQuery( profileTableName, queryName, parameters )) {
				profileIDs.add(new ProfileID(profileEntity.getTableName(),profileEntity.getProfileName()));
			}
		} catch (NullPointerException e) {
			throw e;
		} catch (UnrecognizedProfileTableNameException e) {
			throw e;
		} catch (UnrecognizedQueryNameException e) {
			throw e;
		} catch (InvalidArgumentException e) {
			throw e;
		} catch (AttributeTypeMismatchException e) {
			throw e;
		} catch (Throwable e) {
			throw new ManagementException("Failed to obtain ProfileNames for ProfileTable: " + profileTableName, e);
		}
		finally {
			try {
				sleeTransactionManagement.requireTransactionEnd(b,false);	
			} catch (Throwable e) {
				throw new ManagementException(e.getMessage(),e);
			}
		}

		return profileIDs;
	}
public Collection < ProfileID > getProfilesByStaticQuery ( String profileTableName , String queryName , Object [ ] parameters ) throws NullPointerException , UnrecognizedProfileTableNameException , UnrecognizedQueryNameException , InvalidArgumentException , AttributeTypeMismatchException , ManagementException { if ( logger . isDebugEnabled ( ) ) { logger . debug ( "getProfilesByStaticQuery( profileTableName = " + profileTableName + " , queryName = " + queryName + " , parameters = " + Arrays . asList ( parameters ) + " )" ) ; } if ( queryName == null ) { throw new NullPointerException ( "queryName is null" ) ; } boolean b = sleeTransactionManagement . requireTransaction ( ) ; Collection < ProfileID > profileIDs = new ArrayList < ProfileID > ( ) ; try { ProfileTableImpl profileTable = sleeProfileManagement . getProfileTable ( profileTableName ) ; if ( ! profileTable . getProfileSpecificationComponent ( ) . isSlee11 ( ) ) { throw new UnsupportedOperationException ( "JAIN SLEE 1.1 Specs forbiddens the usage of this method on SLEE 1.0 Profile Tables" ) ; } for ( ProfileEntity profileEntity : profileTable . getProfileSpecificationComponent ( ) . getProfileEntityFramework ( ) . getProfilesByStaticQuery ( profileTableName , queryName , parameters ) ) { profileIDs . add ( new ProfileID ( profileEntity . getTableName ( ) , profileEntity . getProfileName ( ) ) ) ; } } catch ( NullPointerException e ) { throw e ; } catch ( UnrecognizedProfileTableNameException e ) { throw e ; } catch ( UnrecognizedQueryNameException e ) { throw e ; } catch ( InvalidArgumentException e ) { throw e ; } catch ( AttributeTypeMismatchException e ) { throw e ; } catch ( Throwable e ) { throw new ManagementException ( "Failed to obtain ProfileNames for ProfileTable: " + profileTableName , e ) ; } finally { try { sleeTransactionManagement . requireTransactionEnd ( b , false ) ; } catch ( Throwable e ) { throw new ManagementException ( e . getMessage ( ) , e ) ; } } return profileIDs ; }
/*
(non-Javadoc)
@see javax.slee.management.ProfileProvisioningMBean#getProfilesByStaticQuery(java.lang.String, java.lang.String, java.lang.Object[])
/ * ( non - Javadoc )