class LifecycleWrapperProvider implements LifecycleProvider {
        private final Map<String, org.apache.maven.lifecycle.Lifecycle> lifecycles;

        @Inject
        LifecycleWrapperProvider(Map<String, org.apache.maven.lifecycle.Lifecycle> lifecycles) {
            this.lifecycles = lifecycles;
        }

        @Override
        public Collection<Lifecycle> provides() {
            return lifecycles.values().stream().map(this::wrap).collect(Collectors.toList());
        }

        private Lifecycle wrap(org.apache.maven.lifecycle.Lifecycle lifecycle) {<FILL_FUNCTION_BODY>}
    }

            return new Lifecycle() {
                @Override
                public String id() {
                    return lifecycle.getId();
                }

                @Override
                public Collection<Phase> phases() {
                    // TODO: implement
                    throw new UnsupportedOperationException();
                }
            };
        
<methods>public Optional<org.apache.maven.api.Lifecycle> lookup(java.lang.String) <variables>protected final non-sealed Map<java.lang.String,org.apache.maven.api.Lifecycle> values