1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com/*
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * The contents of this file are subject to the terms of the Common Development and
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * Distribution License (the License). You may not use this file except in compliance with the
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * License.
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com *
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * You can obtain a copy of the License at legal/CDDLv1.0.txt. See the License for the
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * specific language governing permission and limitations under the License.
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com *
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * When distributing Covered Software, include this CDDL Header Notice in each file and include
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * the License file at legal/CDDLv1.0.txt. If applicable, add the following below the CDDL
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * Header, with the fields enclosed by brackets [] replaced by your own identifying
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * information: "Portions copyright [year] [name of copyright owner]".
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com *
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * Copyright 2015 ForgeRock AS.
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com */
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.compackage com.sun.identity.sm.ldap;
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.comimport com.google.inject.assistedinject.Assisted;
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.comimport com.iplanet.sso.SSOToken;
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.comimport java.util.Map;
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.comimport org.forgerock.openam.auditors.SMSAuditor;
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com/**
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * Guice factory for creating {@code SMSAuditor} objects
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * @since 13.0.0
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com */
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.compublic interface ConfigAuditorFactory {
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com /**
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * Creates an SMSAuditor object for auditing a config change
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * @param runAs The ssoToken representing the user making the change
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * @param realm The realm the change is happening in
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * @param objectId The objectId of the config being altered
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * @param initialState The state before the change has been made
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com * @return An SMS Auditor
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com */
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com SMSAuditor create(@Assisted SSOToken runAs, @Assisted("realm") String realm, @Assisted("objectId") String
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com objectId, @Assisted Map<String, Object> initialState);
1d220b52ff470e682af30735b255f1d9ab04df21tom.rumsey@forgerock.com}