com.unboundid.scim2.client.SearchResultHandler Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of scim2-sdk-client Show documentation
Show all versions of scim2-sdk-client Show documentation
The UnboundID SCIM2 SDK is a library that may be used to interact with various
types of SCIM-enabled endpoints (such as the Ping Identity server products) to
perform lightweight, cloud-based identity management via the SCIM Protocol.
See https://simplecloud.info for more information.
The newest version!
/*
* Copyright 2015-2024 Ping Identity Corporation
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License (GPLv2 only)
* or the terms of the GNU Lesser General Public License (LGPLv2.1 only)
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see .
*/
package com.unboundid.scim2.client;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.unboundid.scim2.common.annotations.NotNull;
/**
* An interface for handling the search result response. Methods will be called
* in the order they are received.
*/
public interface SearchResultHandler
{
/**
* Handle the startIndex in the search response.
*
* @param startIndex The startIndex.
*/
void startIndex(final int startIndex);
/**
* Handle the itemsPerPage in the search response.
*
* @param itemsPerPage The itemsPerPage.
*/
void itemsPerPage(final int itemsPerPage);
/**
* Handle the totalResults in the search response.
*
* @param totalResults The totalResults.
*/
void totalResults(final int totalResults);
/**
* Handle a search result resource.
*
* @param scimResource A search result resource.
* @return {@code true} to continue processing the search result response or
* {@code false} to immediate stop further processing of the response.
*/
boolean resource(@NotNull final T scimResource);
/**
* Handle a schema extension in the search response.
*
* @param urn The URN of the extension schema.
* @param extensionObjectNode The ObjectNode representing the extension
* schema.
*/
void extension(@NotNull final String urn,
@NotNull final ObjectNode extensionObjectNode);
}