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 * docs/licenses/cddl.txt
011 * or http://www.opensource.org/licenses/cddl1.php.
012 * See the License for the specific language governing permissions
013 * and limitations under the License.
014 *
015 * When distributing Covered Code, include this CDDL HEADER in each
016 * file and include the License file at
017 * docs/licenses/cddl.txt.  If applicable,
018 * add the following below this CDDL HEADER, with the fields enclosed
019 * by brackets "[]" replaced with your own identifying information:
020 *      Portions Copyright [yyyy] [name of copyright owner]
021 *
022 * CDDL HEADER END
023 *
024 *
025 *      Portions Copyright 2007-2021 Ping Identity Corporation
026 *      Portions Copyright 2006-2008 Sun Microsystems, Inc.
027 */
028package com.unboundid.directory.sdk.common.types;
029
030
031
032/**
033 * This enumeration defines the set of possible operation types that
034 * may be processed by the server.
035 */
036public enum OperationType
037{
038  /**
039   * The operation type for abandon operations.
040   */
041  ABANDON("ABANDON"),
042
043
044
045  /**
046   * The operation type for add operations.
047   */
048  ADD("ADD"),
049
050
051
052  /**
053   * The operation type for bind operations.
054   */
055  BIND("BIND"),
056
057
058
059  /**
060   * The operation type for compare operations.
061   */
062  COMPARE("COMPARE"),
063
064
065
066  /**
067   * The operation type for delete operations.
068   */
069  DELETE("DELETE"),
070
071
072
073  /**
074   * The operation type for extended operations.
075   */
076  EXTENDED("EXTENDED"),
077
078
079
080  /**
081   * The operation type for modify operations.
082   */
083  MODIFY("MODIFY"),
084
085
086
087  /**
088   * The operation type for modify DN operations.
089   */
090  MODIFY_DN("MODIFY_DN"),
091
092
093
094  /**
095   * The operation type for search operations.
096   */
097  SEARCH("SEARCH"),
098
099
100
101  /**
102   * The operation type for unbind operations.
103   */
104  UNBIND("UNBIND");
105
106
107
108  // The string representation of this operation type.
109  private final String operationName;
110
111
112
113  /**
114   * Creates a new operation type with the provided operation name.
115   *
116   * @param  operationName  The operation name for this operation
117   *                        type.
118   */
119  OperationType(final String operationName)
120  {
121    this.operationName = operationName;
122  }
123
124
125
126  /**
127   * Retrieves the human-readable name for this operation type.
128   *
129   * @return  The human-readable name for this operation type.
130   */
131  public final String getOperationName()
132  {
133    return operationName;
134  }
135
136
137
138  /**
139   * Retrieves a string representation of this operation type.
140   *
141   * @return  A string representation of this operation type.
142   */
143  public final String toString()
144  {
145    return operationName;
146  }
147}