View Javadoc
1   /*
2    * #%L
3    * Operator.java - mongodb-async-driver - Allanbank Consulting, Inc.
4    * %%
5    * Copyright (C) 2011 - 2014 Allanbank Consulting, Inc.
6    * %%
7    * Licensed under the Apache License, Version 2.0 (the "License");
8    * you may not use this file except in compliance with the License.
9    * You may obtain a copy of the License at
10   * 
11   *      http://www.apache.org/licenses/LICENSE-2.0
12   * 
13   * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   * #L%
19   */
20  
21  package com.allanbank.mongodb.builder;
22  
23  import com.allanbank.mongodb.Version;
24  
25  /**
26   * Operator provides an enumeration of all possible operators.
27   * 
28   * @api.yes This interface is part of the driver's API. Public and protected
29   *          members will be deprecated for at least 1 non-bugfix release
30   *          (version numbers are <major>.<minor>.<bugfix>)
31   *          before being removed or modified.
32   * @copyright 2012-2013, Allanbank Consulting, Inc., All Rights Reserved
33   */
34  public interface Operator {
35  
36      /**
37       * The token for the operator that can be sent to the server.
38       * 
39       * @return The token for the operator.
40       */
41      public String getToken();
42  
43      /**
44       * Returns the first MongoDB version to support the operator.
45       * 
46       * @return The first MongoDB version to support the operator. If
47       *         <code>null</code> then the version is not known and can be
48       *         assumed to be all currently supported versions.
49       */
50      public Version getVersion();
51  }