public SslOption readSslOption(final Function<String, String> properties) {
        final String sslPrefix = "profiler.transport.grpc.ssl.";

        String agentRootPath = properties.apply(DefaultProfilerConfig.AGENT_ROOT_PATH_KEY);

        final SslOption.Builder builder = new SslOption.Builder(agentRootPath);

        ValueAnnotationProcessor reader = new ValueAnnotationProcessor();
        reader.process(builder, new Function<String, String>() {
            @Override
            public String apply(String placeholderName) {
                String prefix = sslPrefix + placeholderName;
                return properties.apply(prefix);
            }
        });
        return builder.build();
    }
NOTE module accessibility
@see com.navercorp.pinpoint.bootstrap.java9.module.ModuleSupport#addPermissionToValueAnnotation(JavaModule)
@author Woonduk Kang(emeroad)
@author jaehong.kim
agent-module/profiler/src/main/java/com/navercorp/pinpoint/profiler/context/grpc/config/GrpcTransportConfig.java