アノテーションインターフェース ConditionalOnAvailableEndpoint


@RetentionSE(RUNTIMESE) @TargetSE({METHODSE,TYPESE}) @DocumentedSE @Conditional(org.springframework.boot.actuate.autoconfigure.endpoint.condition.OnAvailableEndpointCondition.class) public @interface ConditionalOnAvailableEndpoint
エンドポイントが使用可能かどうかをチェックする @Conditional。エンドポイントが有効であり、指定されたテクノロジーで公開されている場合、エンドポイントは使用可能であると見なされます。エンドポイント固有の Environment プロパティに従って有効化を照合し、management.endpoints.enabled-by-default にフォールバックするか、その Endpoint.enableByDefault() に失敗します。management.endpoints.web.exposure.<id> または management.endpoints.jmx.exposure.<id> 固有のプロパティのいずれかに従って露出を一致させるか、アプリケーションが CloudPlatform.CLOUD_FOUNDRY で実行されているかどうかに失敗します。エンドポイントが使用可能であると見なされるには、これらの条件の両方が一致する必要があります。

@Bean メソッドに配置すると、エンドポイントはデフォルトでファクトリメソッドの戻り値の型になります。

 @Configuration
 public class MyConfiguration {

     @ConditionalOnAvailableEndpoint
     @Bean
     public MyEndpoint myEndpoint() {
         ...
     }

 }

拡張機能に同じメカニズムを使用することもできます。

 @Configuration
 public class MyConfiguration {

     @ConditionalOnAvailableEndpoint
     @Bean
     public MyEndpointWebExtension myEndpointWebExtension() {
         ...
     }

 }

上記のサンプルでは、上記のルールで定義されているようにエンドポイントが使用可能な場合、MyEndpointWebExtension が作成されます。MyEndpointWebExtension は、次のようなエンドポイントを参照する通常の拡張機能である必要があります。

 @EndpointWebExtension(endpoint = MyEndpoint.class)
 public class MyEndpointWebExtension {

 }

または、特定のエンドポイントが使用可能な場合にのみ作成する必要があるコンポーネントに対して、ターゲットエンドポイントを手動で指定することもできます。

 @Configuration
 public class MyConfiguration {

     @ConditionalOnAvailableEndpoint(endpoint = MyEndpoint.class)
     @Bean
     public MyComponent myComponent() {
         ...
     }

 }
導入:
2.2.0
作成者:
Brian Clozel, Stephane Nicoll
関連事項:
  • オプション要素のサマリー

    オプション要素
    修飾子と型
    オプションの要素
    説明
    チェックする必要があるエンドポイント型。
    エンドポイントが利用可能であると見なしながら、エンドポイントの露出をチェックするテクノロジー。
  • 要素の詳細

    • endpoint

      ClassSE<?> endpoint
      チェックする必要があるエンドポイント型。@Bean メソッドの戻り値の型が @Endpoint または @EndpointExtension の場合に推測されます。
      戻り値:
      チェックするエンドポイント型
      デフォルト:
      java.lang.Void.class
    • exposure

      EndpointExposure[] exposure
      エンドポイントが利用可能であると見なしながら、エンドポイントの露出をチェックするテクノロジー。
      戻り値:
      チェックするテクノロジー
      導入:
      2.6.0
      デフォルト:
      {}