Cisco Systems Inc. Confidential

com.scms.api.sce
Interface SCESubscriberApi

All Known Implementing Classes:
PRPC_SCESubscriberApi

public interface SCESubscriberApi

The SCE Subscriber Java API provides the ability to the external applications (policy servers) to connect to the SCE directly for subscriber provisioning purposes. The process of updating the NetworkID, Policy Profile and Quota characteristics of the subscriber using the Subscriber ID as the correlation is called Subscriber Provisioning. This interface defines the functionality of the SCE Subscriber Api.

See Also:
for PRPC implementation, for policy profile definition, and SCAS_BB_QuotaOperation for quota issues

Method Summary
 void connect()
           
 void createVLink(VLink vlinkData)
          This operation is used to create a VLink in SCE
 void createVLink(VLink[] vlinkData)
          This operation is used to create multiple VLinks in SCE
 void deleteVLink(VLink vlinkData)
          This operation is used to delete a VLink in SCE
 void deleteVLink(VLink[] vlinkData)
          This operation is used to delete multiple VLinks in SCE
 void disconnect()
           
 void enableVlinkMode()
          This operation is used to enable the VLink mode.
 java.lang.String getAPIName()
           
 java.lang.String getAPIVersion()
           
 int getMaxVlinks()
          This operation is used to get Maximum number of vlinks suppoerted in SCE
 void getQuotaStatuBulk(com.scms.common.Quota_BULK subsBulk, OperationResultHandler handler)
           
 void getQuotaStatus(java.lang.String subscriberID, com.scms.common.Quota quota, OperationResultHandler handler)
           
 java.lang.String getSceAgentVersion()
           
 void getSubscribersBulk(int bulkSize, com.scms.common.SubscribersBulkResponseIterator iter, OperationResultHandler handler)
           
 void getSubscribersBulkIPv6(int bulkSize, com.scms.common.SubscribersBulkResponseIterator iter, OperationResultHandler handler)
           
 boolean isConnected()
           
 boolean isRedundancyStatusActive()
          Retreives a redundancy status of the SCE.
 boolean isVlinkEnabled()
          This operation is used to check if vlink mode is enabled in SCE.
 void login(java.lang.String subscriberID, NetworkID networkID, boolean networkIdAdditive, PolicyProfile policy, com.scms.common.QuotaOperation quota, com.scms.common.ExtendedAttributes esa, OperationResultHandler handler)
          This operation applies the logic described in login operation for each subscriber with extended attributes.
 void login(java.lang.String subscriberID, NetworkID networkID, boolean networkIdAdditive, PolicyProfile policy, com.scms.common.QuotaOperation quota, OperationResultHandler handler)
          This operation is used in order to add/update the subscriber to the SCE.
 void loginBulk(Login_BULK subsBulk, OperationResultHandler handler)
          This operation applies the logic described in login operation for each subscriber in the bulk.
 void loginPullResponse(java.lang.String subscriberID, java.lang.String anonymousSubscriberID, NetworkID networkID, PolicyProfile policy, com.scms.common.QuotaOperation quota, com.scms.common.ExtendedAttributes esa, OperationResultHandler handler)
          This operation applies the logic described in login operation for each subscriber with extended attributes in pull response
 void loginPullResponse(java.lang.String subscriberID, java.lang.String anonymousSubscriberID, NetworkID networkID, PolicyProfile policy, com.scms.common.QuotaOperation quota, OperationResultHandler handler)
          This operation sends subscriber login information to the SCE as a response to a loginPullRequest call from the SCE or a loginPullBulk.
 void loginPullResponseBulk(LoginPullResponse_BULK subsBulk, OperationResultHandler handler)
           
 void logout(java.lang.String subscriberID, NetworkID networkID, OperationResultHandler handler)
           
 void logoutBulk(NetworkAndSubscriberID_BULK subsBulk, OperationResultHandler handler)
           
 void networkIDUpdate(java.lang.String subscriberID, NetworkID networkID, boolean networkIdAdditive, OperationResultHandler handler)
           
 void networkIDUpdateBulk(NetworkAndSubscriberID_BULK subsBulk, OperationResultHandler handler)
           
 void policyProfileUpdate(java.lang.String subscriberID, PolicyProfile policy, OperationResultHandler handler)
           
 void policyProfileUpdateBulk(PolicyProfile_BULK subsBulk, OperationResultHandler handler)
           
 void quotaUpdate(java.lang.String subscriberID, com.scms.common.QuotaOperation quota, OperationResultHandler handler)
           
 void quotaUpdateBulk(com.scms.common.QuotaOperation_BULK subsBulk, OperationResultHandler handler)
           
 void registerLoginPullListener(DualLoginPullListener listener)
           
 void registerLoginPullListener(LoginPullListener listener)
           
 void registerLogoutListener(LogoutListener listener)
           
 void registerQuotaListener(QuotaListener listener)
           
 void registerRedirectListener(com.scms.api.sce.RedirectListener listener)
           
 void setConnectionListener(ConnectionListener listener)
           
 void setRedundancyStateListener(com.scms.api.sce.RedundancyStateListener listener)
           
 void synchronizePullStart(OperationResultHandler handler)
           
 void synchronizePushEnd(boolean success, OperationResultHandler handler)
           
 void synchronizePushStart(OperationResultHandler handler)
           
 void unregisterLoginPullListener()
           
 void unregisterLogoutListener()
           
 void unregisterQuotaListener()
           
 void unregisterRedirectListener()
           
 void updateVLink(VLink vlinkData)
          This operation is used to update a VLink in SCE
 void updateVLink(VLink[] vlinkData)
          This operation is used to update multiple VLinks in SCE
 

Method Detail

login

void login(java.lang.String subscriberID,
           NetworkID networkID,
           boolean networkIdAdditive,
           PolicyProfile policy,
           com.scms.common.QuotaOperation quota,
           OperationResultHandler handler)
           throws java.lang.Exception
This operation is used in order to add/update the subscriber to the SCE. The operation is performed according to the following algorithm: 1. If subscriber ID does not exists in the SCE - a new subscriber is added with all the data supplied 2. If the subscriber ID exists: a. If networkIdAdditive flag is set to TRUE - the supplied NetworkID is added to the existing networkIDs of the subscriber otherwise the supplied networkID replaces the existing networkIDs. b. policy - policy is updated with the new policy values. c. quota - quota is updated according to the applications definition 3. In case there is NetworkID congestion with another subscriber - NetworkID of the other subscriber is logged out implicitly and the new subscriber is logged in.

Parameters:
subscriberID - - the unique ID of the subscriber.
networkID - - the network identifier of the subscriber.
networkIDAdditive - - 1. If networkIdAdditive flag is set to TRUE - the supplied NetworkID is added to the existing networkIDs of the subscriber 2. Otherwise the supplied networkID replaces the existing networkIDs.
policy - - policy profile of the subscriber.
quota - - quota of the subscriber.
handler - - result handler for this operation. Possible error codes list: ERROR_CODE_FATAL_EXCEPTION ERROR_CODE_RESOURCE_SHORTAGE ERROR_CODE_OPERATION_ABORTED ERROR_CODE_INVALID_PARAMETER ERROR_CODE_NO_APPLICATION_INSTALLED
Throws:
java.lang.Exception

login

void login(java.lang.String subscriberID,
           NetworkID networkID,
           boolean networkIdAdditive,
           PolicyProfile policy,
           com.scms.common.QuotaOperation quota,
           com.scms.common.ExtendedAttributes esa,
           OperationResultHandler handler)
           throws java.lang.Exception
This operation applies the logic described in login operation for each subscriber with extended attributes.

Throws:
java.lang.Exception

loginBulk

void loginBulk(Login_BULK subsBulk,
               OperationResultHandler handler)
               throws java.lang.Exception
This operation applies the logic described in login operation for each subscriber in the bulk.

Parameters:
subsBulk - - subscribers bulk filled with all data needed for the login
handler - - result handler for this operation. Possible error codes list: ERROR_CODE_FATAL_EXCEPTION ERROR_CODE_RESOURCE_SHORTAGE ERROR_CODE_OPERATION_ABORTED ERROR_CODE_INVALID_PARAMETER ERROR_CODE_NO_APPLICATION_INSTALLED*
Throws:
java.lang.Exception

loginPullResponse

void loginPullResponse(java.lang.String subscriberID,
                       java.lang.String anonymousSubscriberID,
                       NetworkID networkID,
                       PolicyProfile policy,
                       com.scms.common.QuotaOperation quota,
                       OperationResultHandler handler)
                       throws java.lang.Exception
This operation sends subscriber login information to the SCE as a response to a loginPullRequest call from the SCE or a loginPullBulk.

Parameters:
anonymousSubscriberID - - the identifier of the anonymous subscriber. This identifier is sent by the SCE within the loginPullRequest/loginPullBulkRequest indication.
subscriberID - - the unique ID of the subscriber. See Subscriber ID section for the subscriber ID format description.
networkID - - the network identifier of the subscriber. See Network ID Mappings section for more information.
networkIDAdditive - - If networkIdAdditive flag is set to TRUE - the supplied NetworkID is added to the existing networkIDs of the subscriber otherwise the supplied networkID replaces the existing networkIDs.
policy - - policy profile of the subscriber. See SCAS-BB Subscriber Policy Profile section for more information.
quota - - quota of the subscriber. See Subscriber Quota section for more information.
handler - - result handler for this operation. See Result Handling section for OperationResultHandler interface description. Error codes Following is the list of error codes that may be returned by this method: ERROR_CODE_FATAL_EXCEPTION ERROR_CODE_RESOURCE_SHORTAGE ERROR_CODE_OPERATION_ABORTED ERROR_CODE_INVALID_PARAMETER ERROR_CODE_NO_APPLICATION_INSTALLED *
Throws:
java.lang.Exception

loginPullResponse

void loginPullResponse(java.lang.String subscriberID,
                       java.lang.String anonymousSubscriberID,
                       NetworkID networkID,
                       PolicyProfile policy,
                       com.scms.common.QuotaOperation quota,
                       com.scms.common.ExtendedAttributes esa,
                       OperationResultHandler handler)
                       throws java.lang.Exception
This operation applies the logic described in login operation for each subscriber with extended attributes in pull response

Throws:
java.lang.Exception

loginPullResponseBulk

void loginPullResponseBulk(LoginPullResponse_BULK subsBulk,
                           OperationResultHandler handler)
                           throws java.lang.Exception
Throws:
java.lang.Exception

logout

void logout(java.lang.String subscriberID,
            NetworkID networkID,
            OperationResultHandler handler)
            throws java.lang.Exception
Throws:
java.lang.Exception

logoutBulk

void logoutBulk(NetworkAndSubscriberID_BULK subsBulk,
                OperationResultHandler handler)
                throws java.lang.Exception
Throws:
java.lang.Exception

networkIDUpdate

void networkIDUpdate(java.lang.String subscriberID,
                     NetworkID networkID,
                     boolean networkIdAdditive,
                     OperationResultHandler handler)
                     throws java.lang.Exception
Throws:
java.lang.Exception

networkIDUpdateBulk

void networkIDUpdateBulk(NetworkAndSubscriberID_BULK subsBulk,
                         OperationResultHandler handler)
                         throws java.lang.Exception
Throws:
java.lang.Exception

policyProfileUpdate

void policyProfileUpdate(java.lang.String subscriberID,
                         PolicyProfile policy,
                         OperationResultHandler handler)
                         throws java.lang.Exception
Throws:
java.lang.Exception

policyProfileUpdateBulk

void policyProfileUpdateBulk(PolicyProfile_BULK subsBulk,
                             OperationResultHandler handler)
                             throws java.lang.Exception
Throws:
java.lang.Exception

quotaUpdate

void quotaUpdate(java.lang.String subscriberID,
                 com.scms.common.QuotaOperation quota,
                 OperationResultHandler handler)
                 throws java.lang.Exception
Throws:
java.lang.Exception

quotaUpdateBulk

void quotaUpdateBulk(com.scms.common.QuotaOperation_BULK subsBulk,
                     OperationResultHandler handler)
                     throws java.lang.Exception
Throws:
java.lang.Exception

getQuotaStatus

void getQuotaStatus(java.lang.String subscriberID,
                    com.scms.common.Quota quota,
                    OperationResultHandler handler)
                    throws java.lang.Exception
Throws:
java.lang.Exception

getQuotaStatuBulk

void getQuotaStatuBulk(com.scms.common.Quota_BULK subsBulk,
                       OperationResultHandler handler)
                       throws java.lang.Exception
Throws:
java.lang.Exception

createVLink

void createVLink(VLink vlinkData)
                 throws VLinkDisabledException,
                        VLinkModeException
This operation is used to create a VLink in SCE

Parameters:
vlinkData - - Vlink Data
Throws:
VLinkDisabledException,VLinkModeException
VLinkDisabledException
VLinkModeException

createVLink

void createVLink(VLink[] vlinkData)
                 throws VLinkDisabledException,
                        VLinkModeException
This operation is used to create multiple VLinks in SCE

Parameters:
vlinkData - - Array of Vlink Data
Throws:
VLinkDisabledException,VLinkModeException
VLinkDisabledException
VLinkModeException

deleteVLink

void deleteVLink(VLink vlinkData)
                 throws VLinkDisabledException,
                        VLinkModeException
This operation is used to delete a VLink in SCE

Parameters:
vlinkData - - Vlink Data
Throws:
VLinkDisabledException,VLinkModeException
VLinkDisabledException
VLinkModeException

deleteVLink

void deleteVLink(VLink[] vlinkData)
                 throws VLinkDisabledException,
                        VLinkModeException
This operation is used to delete multiple VLinks in SCE

Parameters:
vlinkData - - Array of Vlink Data
Throws:
VLinkDisabledException,VLinkModeException
VLinkDisabledException
VLinkModeException

updateVLink

void updateVLink(VLink vlinkData)
                 throws VLinkDisabledException,
                        VLinkModeException
This operation is used to update a VLink in SCE

Parameters:
vlinkData - - Vlink Data
Throws:
VLinkDisabledException,VLinkModeException
VLinkDisabledException
VLinkModeException

updateVLink

void updateVLink(VLink[] vlinkData)
                 throws VLinkDisabledException,
                        VLinkModeException
This operation is used to update multiple VLinks in SCE

Parameters:
vlinkData - - Array of Vlink Data
Throws:
VLinkDisabledException,VLinkModeException
VLinkDisabledException
VLinkModeException

isVlinkEnabled

boolean isVlinkEnabled()
                       throws VLinkModeException
This operation is used to check if vlink mode is enabled in SCE.

Throws:
VLinkModeException

getMaxVlinks

int getMaxVlinks()
                 throws VLinkDisabledException,
                        VLinkModeException
This operation is used to get Maximum number of vlinks suppoerted in SCE

Throws:
VLinkDisabledException,VLinkModeException
VLinkDisabledException
VLinkModeException

enableVlinkMode

void enableVlinkMode()
This operation is used to enable the VLink mode. Vlink mode should be enabled before the API connects to the SCE.


connect

void connect()
             throws java.lang.Exception
Throws:
java.lang.Exception

disconnect

void disconnect()
                throws java.lang.Exception
Throws:
java.lang.Exception

isConnected

boolean isConnected()

setConnectionListener

void setConnectionListener(ConnectionListener listener)

setRedundancyStateListener

void setRedundancyStateListener(com.scms.api.sce.RedundancyStateListener listener)

registerLoginPullListener

void registerLoginPullListener(LoginPullListener listener)
                               throws java.lang.Exception
Throws:
java.lang.Exception

registerLoginPullListener

void registerLoginPullListener(DualLoginPullListener listener)
                               throws java.lang.Exception
Throws:
java.lang.Exception

unregisterLoginPullListener

void unregisterLoginPullListener()
                                 throws java.lang.Exception
Throws:
java.lang.Exception

registerLogoutListener

void registerLogoutListener(LogoutListener listener)
                            throws java.lang.Exception
Throws:
java.lang.Exception

unregisterLogoutListener

void unregisterLogoutListener()
                              throws java.lang.Exception
Throws:
java.lang.Exception

registerQuotaListener

void registerQuotaListener(QuotaListener listener)
                           throws java.lang.Exception
Throws:
java.lang.Exception

unregisterQuotaListener

void unregisterQuotaListener()
                             throws java.lang.Exception
Throws:
java.lang.Exception

registerRedirectListener

void registerRedirectListener(com.scms.api.sce.RedirectListener listener)
                              throws java.lang.Exception
Throws:
java.lang.Exception

unregisterRedirectListener

void unregisterRedirectListener()
                                throws java.lang.Exception
Throws:
java.lang.Exception

synchronizePushStart

void synchronizePushStart(OperationResultHandler handler)
                          throws java.lang.Exception
Throws:
java.lang.Exception

synchronizePushEnd

void synchronizePushEnd(boolean success,
                        OperationResultHandler handler)
                        throws java.lang.Exception
Throws:
java.lang.Exception

synchronizePullStart

void synchronizePullStart(OperationResultHandler handler)
                          throws java.lang.Exception
Throws:
java.lang.Exception

getSubscribersBulk

void getSubscribersBulk(int bulkSize,
                        com.scms.common.SubscribersBulkResponseIterator iter,
                        OperationResultHandler handler)
                        throws java.lang.Exception
Throws:
java.lang.Exception

getSubscribersBulkIPv6

void getSubscribersBulkIPv6(int bulkSize,
                            com.scms.common.SubscribersBulkResponseIterator iter,
                            OperationResultHandler handler)
                            throws java.lang.Exception
Throws:
java.lang.Exception

getAPIVersion

java.lang.String getAPIVersion()

getAPIName

java.lang.String getAPIName()

getSceAgentVersion

java.lang.String getSceAgentVersion()
                                    throws java.lang.Exception
Throws:
java.lang.Exception

isRedundancyStatusActive

boolean isRedundancyStatusActive()
Retreives a redundancy status of the SCE. It should be used in cascade topology before performing any logon operation on the SCE since logon oerations are not allowed on standby SCE.

Returns:
This method returns TRUE if redundancy status of the SCE is active and FALSE otherwise

Cisco Systems Inc. Confidential