All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.netflix.governator.providers.AdviceElement Maven / Gradle / Ivy

package com.netflix.governator.providers;

import static java.lang.annotation.RetentionPolicy.RUNTIME;

import com.google.inject.BindingAnnotation;

import java.lang.annotation.Retention;

@Retention(RUNTIME) 
@BindingAnnotation
@interface AdviceElement {
    enum Type {
        SOURCE, ADVICE
    }
    
    /**
     * Unique ID that so multiple @Advice with the same return type may be defined without
     * resulting in a duplicate binding exception.
     */
    int uniqueId();
    
    /**
     * Name derived from a toString() of a qualifier and is used to match @Advice annotated method
     * with their @AdviceProvision
     */
    String name();
    
    AdviceElement.Type type();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy