/* See LICENSE for licensing and NOTICE for copyright. */ package org.ldaptive; /** * Interface for ldap operations. * * @param <Q> type of ldap request * @param <S> type of ldap response * * @author Middleware Services */ public interface Operation<Q extends Request, S> { /** * Execute this ldap operation. * * @param request containing the data required by this operation * * @return response for this operation * * @throws LdapException if the operation fails */ Response<S> execute(Q request) throws LdapException; }