/*
* The contents of this file are subject to the terms of the Common Development and
* Distribution License (the License). You may not use this file except in compliance with the
* License.
*
* You can obtain a copy of the License at legal/CDDLv1.0.txt. See the License for the
* specific language governing permission and limitations under the License.
*
* When distributing Covered Software, include this CDDL Header Notice in each file and include
* the License file at legal/CDDLv1.0.txt. If applicable, add the following below the CDDL
* Header, with the fields enclosed by brackets [] replaced by your own identifying
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
*/
/**
* Responsible for providing ClientSDK implementations of the {@link SessionOperations}.
* <p>
* Importantly they use the {@link SessionRequest} PLL mechanism for performing these operations.
*/
final SessionPLLSender sessionPLLSender,
this(sessionDebug, new ClientSdkSessionRequests(sessionDebug, sessionPLLSender), sessionServiceURLService);
}
this.debug = sessionDebug;
}
/**
*
* @param session The Session to update.
* @param reset If true, then update the last modified timestamp of the Session.
* @return
* @throws SessionException
*/
if (debug.messageEnabled()) {
"Remote fetch SessionInfo for {0}\n" +
"Reset: {1}",
reset));
}
SessionResponse sres = clientSdkSessionRequests.sendRequest(session.getSessionServiceURL(), sreq, session);
}
}
}
/**
* Performs a logout operation by making a remote request based
* on the Sessions service URL.
*
* @param session Session to logout.
*/
if (debug.messageEnabled()) {
"Remote logout {0}",
}
}
throw new UnsupportedOperationException();
}
public SearchResults<SessionInfo> getValidSessions(Session session, String pattern) throws SessionException {
}
}
throw new UnsupportedOperationException("Querying sessions is currently not supported with the ClientSDK");
}
/**
* Destroys the Session via the Session remote service URL.
*
* @param requester {@inheritDoc}
* @param session {@inheritDoc}
* @throws SessionException {@inheritDoc}
*/
if (debug.messageEnabled()) {
"Remote destroy {0}",
session));
}
SessionRequest sreq = new SessionRequest(SessionRequest.DestroySession, requester.getID().toString(), false);
}
/**
* Perform a remote setProperty on the Session using the remote Service URL.
*
* {@inheritDoc}
*/
if (debug.messageEnabled()) {
"Remote setProperty {0} {1}={2}",
name,
value));
}
}
throw new UnsupportedOperationException();
}
clientSdkSessionRequests.sendRequest(sessionServiceURLService.getSessionServiceURL(session.getSessionID()), sreq, session);
}
throw new UnsupportedOperationException("This should not be used in ClientSDK mode");
}
public String getRestrictedTokenId(SessionID masterSid, TokenRestriction restriction) throws SessionException {
throw new UnsupportedOperationException("This operations is not available in Client SDK mode");
}
public String deferenceRestrictedID(Session session, SessionID restrictedID) throws SessionException {
throw new UnsupportedOperationException("This operations is not available in Client SDK mode");
}
throw new UnsupportedOperationException();
}
}