Coverage Report - org.jtheque.core.managers.module.annotations.Module
 
Classes in this File Line Coverage Branch Coverage Complexity
Module
N/A
N/A
0
 
 1  
 package org.jtheque.core.managers.module.annotations;
 2  
 
 3  
 import java.lang.annotation.Documented;
 4  
 import java.lang.annotation.ElementType;
 5  
 import java.lang.annotation.Inherited;
 6  
 import java.lang.annotation.Retention;
 7  
 import java.lang.annotation.RetentionPolicy;
 8  
 import java.lang.annotation.Target;
 9  
 
 10  
 /*
 11  
  * This file is part of JTheque.
 12  
  *
 13  
  * JTheque is free software: you can redistribute it and/or modify
 14  
  * it under the terms of the GNU General Public License as published by
 15  
  * the Free Software Foundation, either version 3 of the License.
 16  
  *
 17  
  * JTheque is distributed in the hope that it will be useful,
 18  
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 19  
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 20  
  * GNU General Public License for more details.
 21  
  *
 22  
  * You should have received a copy of the GNU General Public License
 23  
  * along with JTheque.  If not, see <http://www.gnu.org/licenses/>.
 24  
  */
 25  
 
 26  
 /**
 27  
  * An annotation to describe a module.
 28  
  *
 29  
  * @author Baptiste Wicht
 30  
  */
 31  
 @Documented
 32  
 @Inherited
 33  
 @Retention(RetentionPolicy.RUNTIME)
 34  
 @Target(ElementType.TYPE)
 35  
 public @interface Module {
 36  
     /**
 37  
      * The identity of the module. This identity must be unique.
 38  
      *
 39  
      * @return A String identity for the module.
 40  
      */
 41  
     String id();
 42  
 
 43  
     /**
 44  
      * Return the i18n base name for the module.
 45  
      *
 46  
      * @return The i18n base name for the module.
 47  
      */
 48  
     String i18n();
 49  
 
 50  
     /**
 51  
      * Return the version of the module.
 52  
      *
 53  
      * @return The version of the module.
 54  
      */
 55  
     String version();
 56  
 
 57  
     /**
 58  
      * Return the needed core version of the module.
 59  
      *
 60  
      * @return The needed core version of the module.
 61  
      */
 62  
     String core();
 63  
 
 64  
     /**
 65  
      * Return the name of the jar file of the module.
 66  
      *
 67  
      * @return The name of the jar file of the module.
 68  
      */
 69  
     String jarFile();
 70  
 
 71  
     /**
 72  
      * The URL of the module.
 73  
      *
 74  
      * @return URL url of the module.
 75  
      */
 76  
     String url() default "";
 77  
 
 78  
     /**
 79  
      * The update URL.
 80  
      *
 81  
      * @return the update URL.
 82  
      */
 83  
     String updateURL() default "";
 84  
 
 85  
     /**
 86  
      * The dependency of the module.
 87  
      *
 88  
      * @return the dependency of the module.
 89  
      */
 90  
     String[] dependencies() default {};
 91  
 
 92  
     /**
 93  
      * The date of the module.
 94  
      *
 95  
      * @return the date of the module.
 96  
      */
 97  
     String date() default "";
 98  
 
 99  
     /**
 100  
      * The message's file URL.
 101  
      *
 102  
      * @return the message's files URL.
 103  
      */
 104  
     String messageFileURL() default "";
 105  
 }