1 /* 2 * Copyright 2021 The gRPC Authors 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package io.grpc.stub.annotations; 18 19 import java.lang.annotation.ElementType; 20 import java.lang.annotation.Retention; 21 import java.lang.annotation.RetentionPolicy; 22 import java.lang.annotation.Target; 23 24 /** 25 * Annotates that the class is gRPC-generated code to assist 26 * <a href="https://docs.oracle.com/javase/6/docs/api/javax/annotation/processing/Processor.html"> 27 * Java Annotation Processors.</a> 28 * 29 * <p>This annotation is used by the gRPC stub compiler to annotate outer classes. Users should not 30 * annotate their own classes with this annotation. Not all stubs may have this annotation, so 31 * consumers should not assume that it is present. 32 * 33 * @since 1.40.0 34 */ 35 @Retention(RetentionPolicy.CLASS) 36 @Target(ElementType.TYPE) 37 public @interface GrpcGenerated {} 38