Search in sources :

Example 11 with ShClientActivity

use of net.java.slee.resource.diameter.sh.client.ShClientActivity in project jain-slee.diameter by RestComm.

the class HSSClientChildSbb method updateRepositoryData.

public String updateRepositoryData(String publicIdentity, String data, String destinationRealm, String destinationHost) throws IOException {
    UserIdentityAvp publicIdentityAvp = createUserIdentityAvp(publicIdentity, null);
    ProfileUpdateRequest pur = diameterShClientMessageFactory.createProfileUpdateRequest(publicIdentityAvp, DataReferenceType.REPOSITORY_DATA, data.getBytes());
    pur.setAuthSessionState(AuthSessionStateType.NO_STATE_MAINTAINED);
    // Set destination -- Realm is mandatory, host is optional
    pur.setDestinationRealm(new DiameterIdentity(destinationRealm));
    if (destinationHost != null) {
        pur.setDestinationHost(new DiameterIdentity(destinationHost));
    }
    ShClientActivity activity = getShClientActivity();
    activity.sendProfileUpdateRequest(pur);
    // Store request for future matching
    storeRequestInACI(activity, pur);
    // Return Session-Id, may be used as identifier
    return activity.getSessionId();
}
Also used : ShClientActivity(net.java.slee.resource.diameter.sh.client.ShClientActivity) ProfileUpdateRequest(net.java.slee.resource.diameter.sh.events.ProfileUpdateRequest) DiameterIdentity(net.java.slee.resource.diameter.base.events.avp.DiameterIdentity) UserIdentityAvp(net.java.slee.resource.diameter.sh.events.avp.UserIdentityAvp)

Example 12 with ShClientActivity

use of net.java.slee.resource.diameter.sh.client.ShClientActivity in project jain-slee.diameter by RestComm.

the class HSSClientChildSbb method subscribeRepositoryData.

public String subscribeRepositoryData(String publicIdentity, byte[][] serviceIndications, int subscriptionRequestType, String destinationRealm, String destinationHost) throws IOException {
    UserIdentityAvp publicIdentityAvp = createUserIdentityAvp(publicIdentity, null);
    SubscribeNotificationsRequest snr = diameterShClientMessageFactory.createSubscribeNotificationsRequest(publicIdentityAvp, DataReferenceType.REPOSITORY_DATA, SubsReqType.fromInt(subscriptionRequestType));
    snr.setAuthSessionState(AuthSessionStateType.NO_STATE_MAINTAINED);
    snr.setServiceIndications(serviceIndications);
    // Set destination -- Realm is mandatory, host is optional
    snr.setDestinationRealm(new DiameterIdentity(destinationRealm));
    if (destinationHost != null) {
        snr.setDestinationHost(new DiameterIdentity(destinationHost));
    }
    ShClientActivity activity = getShClientActivity();
    activity.sendSubscribeNotificationsRequest(snr);
    // Store request for future matching
    storeRequestInACI(activity, snr);
    // Return Session-Id, may be used as identifier
    return activity.getSessionId();
}
Also used : ShClientActivity(net.java.slee.resource.diameter.sh.client.ShClientActivity) SubscribeNotificationsRequest(net.java.slee.resource.diameter.sh.events.SubscribeNotificationsRequest) DiameterIdentity(net.java.slee.resource.diameter.base.events.avp.DiameterIdentity) UserIdentityAvp(net.java.slee.resource.diameter.sh.events.avp.UserIdentityAvp)

Example 13 with ShClientActivity

use of net.java.slee.resource.diameter.sh.client.ShClientActivity in project jain-slee.diameter by RestComm.

the class HSSClientChildSbb method getShClientActivity.

private ShClientActivity getShClientActivity() throws IOException {
    try {
        ShClientActivity activity = diameterShClientSbbInterface.createShClientActivity();
        ActivityContextInterface aci = diameterShClientACIF.getActivityContextInterface(activity);
        aci.attach(sbbContext.getSbbLocalObject());
        return activity;
    } catch (Exception e) {
        throw new IOException(e.getMessage(), e);
    }
}
Also used : ShClientActivity(net.java.slee.resource.diameter.sh.client.ShClientActivity) ActivityContextInterface(javax.slee.ActivityContextInterface) IOException(java.io.IOException) NamingException(javax.naming.NamingException) CreateException(javax.slee.CreateException) IOException(java.io.IOException)

Example 14 with ShClientActivity

use of net.java.slee.resource.diameter.sh.client.ShClientActivity in project jain-slee.diameter by RestComm.

the class HSSClientChildSbb method getMSISDN.

public String getMSISDN(String publicIdentity, byte[] msisdn, String destinationRealm, String destinationHost) throws IOException {
    UserIdentityAvp publicIdentityAvp = createUserIdentityAvp(publicIdentity, msisdn);
    UserDataRequest udr = diameterShClientMessageFactory.createUserDataRequest(publicIdentityAvp, DataReferenceType.MSISDN);
    udr.setAuthSessionState(AuthSessionStateType.NO_STATE_MAINTAINED);
    // Set destination -- Realm is mandatory, host is optional
    udr.setDestinationRealm(new DiameterIdentity(destinationRealm));
    if (destinationHost != null) {
        udr.setDestinationHost(new DiameterIdentity(destinationHost));
    }
    ShClientActivity activity = getShClientActivity();
    activity.sendUserDataRequest(udr);
    // Store request for future matching
    storeRequestInACI(activity, udr);
    // Return Session-Id, may be used as identifier
    return activity.getSessionId();
}
Also used : ShClientActivity(net.java.slee.resource.diameter.sh.client.ShClientActivity) UserDataRequest(net.java.slee.resource.diameter.sh.events.UserDataRequest) DiameterIdentity(net.java.slee.resource.diameter.base.events.avp.DiameterIdentity) UserIdentityAvp(net.java.slee.resource.diameter.sh.events.avp.UserIdentityAvp)

Example 15 with ShClientActivity

use of net.java.slee.resource.diameter.sh.client.ShClientActivity in project jain-slee.diameter by RestComm.

the class HSSClientChildSbb method getRepositoryData.

// -- SBB LOCAL OBJECT METHODS ----------------------------------------------
public String getRepositoryData(String publicIdentity, byte[][] serviceIndications, String destinationRealm, String destinationHost) throws IOException {
    UserIdentityAvp publicIdentityAvp = createUserIdentityAvp(publicIdentity, null);
    UserDataRequest udr = diameterShClientMessageFactory.createUserDataRequest(publicIdentityAvp, DataReferenceType.REPOSITORY_DATA);
    udr.setAuthSessionState(AuthSessionStateType.NO_STATE_MAINTAINED);
    udr.setServiceIndications(serviceIndications);
    // Set destination -- Realm is mandatory, host is optional
    udr.setDestinationRealm(new DiameterIdentity(destinationRealm));
    if (destinationHost != null) {
        udr.setDestinationHost(new DiameterIdentity(destinationHost));
    }
    ShClientActivity activity = getShClientActivity();
    activity.sendUserDataRequest(udr);
    // Store request for future matching
    storeRequestInACI(activity, udr);
    // Return Session-Id, may be used as identifier
    return activity.getSessionId();
}
Also used : ShClientActivity(net.java.slee.resource.diameter.sh.client.ShClientActivity) UserDataRequest(net.java.slee.resource.diameter.sh.events.UserDataRequest) DiameterIdentity(net.java.slee.resource.diameter.base.events.avp.DiameterIdentity) UserIdentityAvp(net.java.slee.resource.diameter.sh.events.avp.UserIdentityAvp)

Aggregations

ShClientActivity (net.java.slee.resource.diameter.sh.client.ShClientActivity)18 DiameterIdentity (net.java.slee.resource.diameter.base.events.avp.DiameterIdentity)17 UserIdentityAvp (net.java.slee.resource.diameter.sh.events.avp.UserIdentityAvp)17 UserDataRequest (net.java.slee.resource.diameter.sh.events.UserDataRequest)10 SubscribeNotificationsRequest (net.java.slee.resource.diameter.sh.events.SubscribeNotificationsRequest)5 ProfileUpdateRequest (net.java.slee.resource.diameter.sh.events.ProfileUpdateRequest)2 IOException (java.io.IOException)1 NamingException (javax.naming.NamingException)1 ActivityContextInterface (javax.slee.ActivityContextInterface)1 CreateException (javax.slee.CreateException)1 IdentitySetType (net.java.slee.resource.diameter.sh.events.avp.IdentitySetType)1