@RetentionSE(valueSE=RUNTIMESE) @TargetSE(valueSE={METHODSE,TYPESE}) @DocumentedSE @Conditional(value=org.springframework.boot.actuate.autoconfigure.endpoint.condition.OnEnabledEndpointCondition.class) public @interface ConditionalOnEnabledEndpoint
Conditional。エンドポイント固有の Environment プロパティに従って一致し、management.endpoints.enabled-by-default にフォールバックするか、その Endpoint.enableByDefault() に失敗します。@Bean メソッドに配置すると、エンドポイントはデフォルトでファクトリメソッドの戻り値の型になります。
@Configuration
public class MyConfiguration {
@ConditionalOnEnableEndpoint
@Bean
public MyEndpoint myEndpoint() {
...
}
}拡張機能に同じメカニズムを使用することもできます。
@Configuration
public class MyConfiguration {
@ConditionalOnEnableEndpoint
@Bean
public MyEndpointWebExtension myEndpointWebExtension() {
...
}
} 上記のサンプルでは、エンドポイントが上記のルールで定義されているように有効化されている場合、MyEndpointWebExtension が作成されます。MyEndpointWebExtension は、エンドポイントを参照する通常の拡張である必要があります。
@EndpointWebExtension(endpoint = MyEndpoint.class)
public class MyEndpointWebExtension {
}または、特定のエンドポイントが有効になっている場合にのみ作成する必要があるコンポーネントに対して、ターゲットエンドポイントを手動で指定できます。
@Configuration
public class MyConfiguration {
@ConditionalOnEnableEndpoint(endpoint = MyEndpoint.class)
@Bean
public MyComponent myComponent() {
...
}
}Endpointpublic abstract ClassSE<?> endpoint
Copyright © 2019 Pivotal Software, Inc.. All rights reserved.