class CompiledResourceCreatorConfiguration {

    public Collection<VirtualTerraformResource> apply(TerraformResource resource) {
        Object values;
        try {
            values = valuesPath.read(resource.getValues());
        } catch (PathNotFoundException e) {
            return Collections.emptyList();
        }

        if (values instanceof List) {
            return createResource(resource, (List<?>)values);
        }
        List<Object> valueList = new ArrayList<>();
        valueList.add(values);
        return createResource(resource, valueList);
    }

    public  CompiledResourceCreatorConfiguration(ResourceCreatorConfiguration resourceCreatorConfiguration);

}