001
014
015 package com.liferay.portal.kernel.transaction;
016
017 import java.lang.annotation.Documented;
018 import java.lang.annotation.ElementType;
019 import java.lang.annotation.Inherited;
020 import java.lang.annotation.Retention;
021 import java.lang.annotation.RetentionPolicy;
022 import java.lang.annotation.Target;
023
024
027 @Documented
028 @Inherited
029 @Retention(RetentionPolicy.RUNTIME)
030 @Target({ElementType.METHOD, ElementType.TYPE})
031 public @interface Transactional {
032
033 public boolean enabled() default true;
034
035 public Isolation isolation() default Isolation.DEFAULT;
036
037 public Class<? extends Throwable>[] noRollbackFor() default {};
038
039 public String[] noRollbackForClassName() default {};
040
041 public Propagation propagation() default Propagation.REQUIRED;
042
043 public boolean readOnly() default false;
044
045 public Class<? extends Throwable>[] rollbackFor() default {};
046
047 public String[] rollbackForClassName() default {};
048
049 public int timeout() default TransactionDefinition.TIMEOUT_DEFAULT;
050
051 }