アノテーションインターフェース 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- 戻り値:
- チェックするエンドポイント型
- デフォルト:
- java.lang.Void.class
exposure
EndpointExposure[] exposureエンドポイントが利用可能であると見なしながら、エンドポイントの露出をチェックするテクノロジー。- 戻り値:
- チェックするテクノロジー
- 導入:
- 2.6.0
- デフォルト:
- {}