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();
}
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();
}
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);
}
}
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();
}
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();
}
Aggregations