io.helidon.webserver.observe.log.LogObserverConfigBlueprint Maven / Gradle / Ivy
The newest version!
/*
* Copyright (c) 2023, 2024 Oracle and/or its affiliates.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package io.helidon.webserver.observe.log;
import io.helidon.builder.api.Option;
import io.helidon.builder.api.Prototype;
import io.helidon.webserver.observe.ObserverConfigBase;
import io.helidon.webserver.observe.spi.ObserveProvider;
/**
* Log Observer configuration.
*/
@Prototype.Blueprint
@Prototype.Configured(root = false, value = "log")
@Prototype.Provides(ObserveProvider.class)
interface LogObserverConfigBlueprint extends ObserverConfigBase, Prototype.Factory {
@Option.Configured
@Option.Default("log")
String endpoint();
@Override
@Option.Default("log")
String name();
/**
* Permit all access, even when not authorized.
*
* @return whether to permit access for anybody
*/
@Option.Configured
boolean permitAll();
/**
* Configuration of log stream.
*
* @return log stream configuration
*/
@Option.Configured
@Option.DefaultCode("@[email protected]()")
LogStreamConfig stream();
}