public void setSecuritySpec(String serviceRoleID,
                                String methodName,
                                Hashtable<String, String> properties)
            throws GeneralException {

        logger.debug(">>>>>> setSecuritySpec: " + " serviceRoleID="
                + serviceRoleID + " methodName=" + methodName
                + " property count=" + properties.size());
        if (serviceRoleID == null || serviceRoleID.isEmpty()) {
            throw new GeneralException("serviceRoleID is missing.");
        }
        // if methodRoleID is missing, then set properties at the service level.
        if (methodName == null || methodName.isEmpty()) {
            rolePropertiesTable.put(serviceRoleID, properties);

            // otherwise set properties at the method level, but only if
            // parent service-level properties already exist.
        } else {
            Hashtable<String, String> serviceProps = rolePropertiesTable.get(serviceRoleID);
            if (serviceProps == null) {
                throw new GeneralException("Cannot add method-level security properties"
                        + " if there are no properties defined for the backend service that the "
                        + " method is part of. ");
            }
            String roleKey = serviceRoleID + "/" + methodName;
            rolePropertiesTable.put(roleKey, properties);
        }
    }
public void setSecuritySpec ( String serviceRoleID , String methodName , Hashtable < String , String > properties ) throws GeneralException { logger . debug ( ">>>>>> setSecuritySpec: " + " serviceRoleID=" + serviceRoleID + " methodName=" + methodName + " property count=" + properties . size ( ) ) ; if ( serviceRoleID == null || serviceRoleID . isEmpty ( ) ) { throw new GeneralException ( "serviceRoleID is missing." ) ; } if ( methodName == null || methodName . isEmpty ( ) ) { rolePropertiesTable . put ( serviceRoleID , properties ) ; } else { Hashtable < String , String > serviceProps = rolePropertiesTable . get ( serviceRoleID ) ; if ( serviceProps == null ) { throw new GeneralException ( "Cannot add method-level security properties" + " if there are no properties defined for the backend service that the " + " method is part of. " ) ; } String roleKey = serviceRoleID + "/" + methodName ; rolePropertiesTable . put ( roleKey , properties ) ; } }
Set the security properties at the backend service or for a method of
that backend service.

@param serviceRoleID -
the role identifier for a service. Valid values for this parameter
are: - a sDep PID for a backend service - "default" to indicate
the default properties for any service - "fedoraInternalCall-1"
for Fedora calling back to itself as a service
@param methodName -
optional method name within the backend service. If specified
security properties at the service method level will be recorded.
If null, service properties at the service level will be recorded.
@param properties