/*
* Copyright (c) 2005, 2018 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* This Source Code may also be made available under the following Secondary
* Licenses when the conditions for such availability set forth in the
* Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
* version 2 with the GNU Classpath Exception, which is available at
* https://www.gnu.org/software/classpath/license.html.
*
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
*/
package javax.annotation;
import java.lang.annotation.*;
import static java.lang.annotation.ElementType.*;
import static java.lang.annotation.RetentionPolicy.*;
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.
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 could have the
value 2001-07-04T12:08:56.235-0700
,
which represents 2001-07-04 12:08:56 local time in the U.S. Pacific
time zone.
The comment
element is a place holder for any comments
that the code generator may want to include in the generated code.
Since: 1.6, Common Annotations 1.0
/**
* The <code>Generated</code> 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.
* <p>The <code>value</code> 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 <code>com.company.package.classname</code>.</p>
* <p>The <code>date</code> element is used to indicate the date the
* source was generated.
* The <code>date</code> element must follow the ISO 8601 standard.
* For example, the <code>date</code> element could have the
* value <code>2001-07-04T12:08:56.235-0700</code>,
* which represents 2001-07-04 12:08:56 local time in the U.S. Pacific
* time zone.</p>
* <p>The <code>comment</code> element is a place holder for any comments
* that the code generator may want to include in the generated code.</p>
*
* @since 1.6, Common Annotations 1.0
*/
@Documented
@Retention(SOURCE)
@Target({PACKAGE, TYPE, ANNOTATION_TYPE, METHOD, CONSTRUCTOR, FIELD,
LOCAL_VARIABLE, PARAMETER})
public @interface Generated {
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
.
/**
* 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: <code>com.acme.generator.CodeGen</code>.
*/
String[] value();
Date when the source was generated.
/**
* Date when 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.
/**
* A place holder for any comments that the code generator may want to
* include in the generated code.
*/
String comments() default "";
}