class ApplicationContext implements UriInfo, InitialProperties, Lifecycle {

    @Override
    public Map<String, String> getProperties() {
        return properties == null ? properties = new HashMap<>() : properties;
    }

    private  ApplicationContext(ApplicationContextBuilder builder);

}