Annotation Type Optional


@Documented @Retention(RUNTIME) @Target({METHOD,FIELD,PARAMETER}) public @interface Optional
Marker annotation indicating that an instance variable or method marked with Inject is not required to be present at run-time. If the service is not present, there will be no error and injection will not be performed.

Example:

 
      @Inject
      @Optional  
      MyContract myOptionalService;