com.speedment.common.annotation.GeneratedCode Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of runtime-deploy Show documentation
Show all versions of runtime-deploy Show documentation
A Speedment bundle that shades all dependencies into one jar. This is
useful when deploying an application on a server.
/**
*
* Copyright (c) 2006-2019, Speedment, Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); You may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.speedment.common.annotation;
import java.lang.annotation.Documented;
import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
import static java.lang.annotation.ElementType.CONSTRUCTOR;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.LOCAL_VARIABLE;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PACKAGE;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.TYPE;
import java.lang.annotation.Retention;
import static java.lang.annotation.RetentionPolicy.SOURCE;
import java.lang.annotation.Target;
/**
* The Generated annotation is used to mark source code that has been generated.
* It can also be used to differentiate user written code from generated code
* in a single file. When used, the value element must have the name of the
* code generator. The recommended convention is to use the fully qualified
* name of the code generator in the value field .
* For example: com.company.package.classname.
* The date element is used to indicate the date the source was generated.
* The date element must follow the ISO 8601 standard. For example the date
* element would have the following value 2001-07-04T12:08:56.235-0700
* which represents 2001-07-04 12:08:56 local time in the U.S. Pacific
* Time time zone.
* The comment element is a place holder for any comments that the code
* generator may want to include in the generated code.
*
*/
@Documented
@Retention(SOURCE)
@Target({PACKAGE, TYPE, ANNOTATION_TYPE, METHOD, CONSTRUCTOR, FIELD,
LOCAL_VARIABLE, PARAMETER})
public @interface GeneratedCode {
/**
* The value element MUST have the name of the code generator.
* The recommended convention is to use the fully qualified name of the
* code generator. For example: com.acme.generator.CodeGen.
* @return the code generators
*/
String[] value();
/**
* Date when the source was generated.
* @return the date the source was generated
*/
String date() default "";
/**
* A place holder for any comments that the code generator may want to
* include in the generated code.
* @return the comment
*/
String comments() default "";
}