1 /* 2 * Copyright (c) 1998-2004 The Jgroup Team. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License version 2 as 6 * published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU Lesser General Public License for more details. 12 * 13 * You should have received a copy of the GNU Lesser General Public License 14 * along with this program; if not, write to the Free Software 15 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 16 * 17 */ 18 19 package jgroup.core.protocols; 20 21 import java.lang.annotation.Documented; 22 import java.lang.annotation.ElementType; 23 import java.lang.annotation.Inherited; 24 import java.lang.annotation.Retention; 25 import java.lang.annotation.RetentionPolicy; 26 import java.lang.annotation.Target; 27 28 /** 29 * Annotation marker for atomic methods. That is methods whose 30 * invocations must be totally ordered among group members. 31 * 32 * @author Hein Meling 33 * @since Jgroup 3.0 34 */ 35 @Documented 36 @Inherited 37 @Retention(RetentionPolicy.RUNTIME) 38 @Target(ElementType.METHOD) 39 public @interface Atomic { 40 } // END Atomic