]> review.fuel-infra Code Review - packages/trusty/mysql-wsrep-5.6.git/blob
1cf836aaebc01855d1cc8557a1860f6f0f37fee8
[packages/trusty/mysql-wsrep-5.6.git] /
1 /*
2    Copyright 2010 Sun Microsystems, Inc.
3    All rights reserved. Use is subject to license terms.
4
5    This program is free software; you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; version 2 of the License.
8
9    This program is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12    GNU General Public License for more details.
13
14    You should have received a copy of the GNU General Public License
15    along with this program; if not, write to the Free Software
16    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
17 */
18
19 package com.mysql.clusterj.annotation;
20
21 import java.lang.annotation.ElementType;
22 import java.lang.annotation.Retention;
23 import java.lang.annotation.RetentionPolicy;
24 import java.lang.annotation.Target;
25
26 /**
27  * Annotation on a class or member to define the partition key.
28  * If annotating a class or interface, either a single
29  * column or multiple columns can be specified.
30  * If annotating a member, neither column nor columns should be specified.
31  */
32 @Target({ElementType.TYPE, ElementType.FIELD, ElementType.METHOD}) 
33 @Retention(RetentionPolicy.RUNTIME)
34 public @interface PartitionKey
35 {
36     /**
37      * Name of the column to use for the partition key
38      * @return the name of the column to use for the partition key
39      */
40     String column() default "";
41
42     /**
43      * The column(s) for the partition key
44      * @return the column(s) for the partition key
45      */
46     Column[] columns() default {};
47 }