001/* 002 * CDDL HEADER START 003 * 004 * The contents of this file are subject to the terms of the 005 * Common Development and Distribution License, Version 1.0 only 006 * (the "License"). You may not use this file except in compliance 007 * with the License. 008 * 009 * You can obtain a copy of the license at 010 * http://www.opensource.org/licenses/cddl1.php. 011 * See the License for the specific language governing permissions 012 * and limitations under the License. 013 * 014 * When distributing Covered Code, include this CDDL HEADER in each 015 * file. If applicable, add the following below this CDDL HEADER, 016 * with the fields enclosed by brackets "[]" replaced with your own 017 * identifying information: 018 * Portions Copyright [yyyy] [name of copyright owner] 019 * 020 * CDDL HEADER END 021 * 022 * 023 * Copyright 2014-2021 Ping Identity Corporation 024 */ 025package com.unboundid.directory.sdk.common.api; 026 027import com.unboundid.directory.sdk.common.types.CompletedOperationContext; 028import com.unboundid.directory.sdk.ds.internal.DirectoryServerExtension; 029import com.unboundid.directory.sdk.proxy.internal.DirectoryProxyServerExtension; 030import com.unboundid.util.Extensible; 031import com.unboundid.util.ThreadSafety; 032import com.unboundid.util.ThreadSafetyLevel; 033 034/** 035 * This interface defines a set of methods that may be used to notify a server 036 * SDK extension whenever an operation has completed. This is guaranteed to be 037 * called for any operation that has started being processed regardless of 038 * whether the operation completed successfully or not. 039 */ 040@Extensible 041@DirectoryServerExtension 042@DirectoryProxyServerExtension(appliesToLocalContent = true, 043 appliesToRemoteContent = true) 044@ThreadSafety(level = ThreadSafetyLevel.INTERFACE_NOT_THREADSAFE) 045public interface OperationCompletedListener { 046 /** 047 * Performs any processing that might be necessary after the server has 048 * completed processing an operation. 049 * 050 * @param completedOperationContext The operation context of the operation 051 * that completed. 052 */ 053 void handleOperationCompleted( 054 final CompletedOperationContext completedOperationContext); 055} 056