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 }