com.identityx.clientSDK.repositories.AuthenticatorRepository Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of IdentityXClientSDK Show documentation
Show all versions of IdentityXClientSDK Show documentation
Client SDK for IdentityX Rest Services
/*
* Copyright Daon.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.identityx.clientSDK.repositories;
import java.util.HashMap;
import com.daon.identityx.rest.model.def.ResourcePaths;
import com.daon.identityx.rest.model.pojo.Authenticator;
import com.daon.identityx.rest.model.support.AuthenticatorArchiveCriteria;
import com.daon.identityx.rest.model.support.AuthenticatorBlockCriteria;
import com.daon.identityx.rest.model.support.AuthenticatorUnblockCriteria;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.identityx.auth.impl.QueryString;
import com.identityx.clientSDK.collections.AuthenticatorCollection;
import com.identityx.clientSDK.exceptions.IdxRestException;
import com.identityx.clientSDK.expandSpecs.AuthenticatorExpandSpecForGet;
import com.identityx.clientSDK.queryHolders.AuthenticatorQueryHolder;
import com.identityx.clientSDK.queryHolders.SensitiveDataSpec;
/**
*
* repository for the Authenticator entity
*
*/
public class AuthenticatorRepository extends BaseRepository {
public AuthenticatorRepository() {
super(Authenticator.class, AuthenticatorCollection.class);
setResourcePath(ResourcePaths.defaultAuthenticatorPath);
}
/**
* Executes a get operation on a Rest service
* @param href url of the Rest service
* @param expandSpec {@link AuthenticatorExpandSpecForGet}
* @return the deserialised resource returned by the Rest service
* @throws IdxRestException
*/
public Authenticator get(String href, AuthenticatorExpandSpecForGet expandSpec, SensitiveDataSpec sensitiveDataSpec) throws IdxRestException {
return this.get(href, expandSpec, sensitiveDataSpec, null);
}
public Authenticator get(String href, AuthenticatorExpandSpecForGet expandSpec, SensitiveDataSpec sensitiveDataSpec, HashMap requestSpecificHeaders) throws IdxRestException {
QueryString queryString = new QueryString();
if (expandSpec != null) {
try {
queryString.put("expand", (new ObjectMapper()).writeValueAsString(expandSpec));
} catch (JsonProcessingException e) {
throw new IdxRestException("Failed to convert to JSON", e);
}
}
if (sensitiveDataSpec != null) {
queryString.put("sensitiveData", String.valueOf(sensitiveDataSpec.getSensitiveData()));
}
return super.get(href, queryString, requestSpecificHeaders);
}
public Authenticator forceUnblock(Authenticator entity) throws IdxRestException {
return this.forceUnblock(entity, null);
}
public Authenticator forceUnblock(Authenticator entity, HashMap requestSpecificHeaders) throws IdxRestException {
return getRestClient().post(null, entity.getHref() + "/unblocked", Authenticator.class, requestSpecificHeaders);
}
public Authenticator reenrol(Authenticator entity) throws IdxRestException {
return this.reenrol(entity, null);
}
public Authenticator reenrol(Authenticator entity, HashMap requestSpecificHeaders) throws IdxRestException {
return getRestClient().post(null, entity.getHref() + "/reenrol", Authenticator.class, requestSpecificHeaders);
}
public Authenticator archive(Authenticator entity, AuthenticatorArchiveCriteria archiveCriteria) throws IdxRestException {
return this.archive(entity, archiveCriteria, null);
}
public Authenticator archive(Authenticator entity, AuthenticatorArchiveCriteria archiveCriteria, HashMap requestSpecificHeaders) throws IdxRestException {
Authenticator result = getRestClient().post(archiveCriteria, entity.getHref() + "/archived", Authenticator.class, requestSpecificHeaders);
return result;
}
public Authenticator block(Authenticator entity, AuthenticatorBlockCriteria blockCriteria) throws IdxRestException {
return this.block(entity, blockCriteria, null);
}
public Authenticator block(Authenticator entity, AuthenticatorBlockCriteria blockCriteria, HashMap requestSpecificHeaders) throws IdxRestException {
Authenticator result = getRestClient().post(blockCriteria, entity.getHref() + "/blocked", Authenticator.class, requestSpecificHeaders);
return result;
}
public Authenticator unblock(Authenticator entity, AuthenticatorUnblockCriteria unblockCriteria) throws IdxRestException {
return this.unblock(entity, unblockCriteria, null);
}
public Authenticator unblock(Authenticator entity, AuthenticatorUnblockCriteria unblockCriteria, HashMap requestSpecificHeaders) throws IdxRestException {
QueryString queryString = null;
if (unblockCriteria != null) {
queryString = new QueryString();
queryString.put("unblockAllWithSameAppId", Boolean.toString(unblockCriteria.getUnblockAllWithSameAppId()));
queryString.put("unblockAllWithSameDeviceId", Boolean.toString(unblockCriteria.getUnblockAllWithSameDeviceId()));
}
Authenticator result = getRestClient().delete(entity.getHref() + "/blocked", queryString, Authenticator.class, requestSpecificHeaders);
return result;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy