/*
* Copyright 2000-2013 Enonic AS
* http://www.enonic.com/license
*/
package com.enonic.cms.core.plugin.host;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;
import com.enonic.cms.api.client.LocalClient;
@Component
public final class HostServicesImpl
implements HostServices
{
private final Map<String, Object> serviceMap;
public HostServicesImpl()
{
this.serviceMap = Maps.newHashMap();
register( "pluginEnvironment", new PluginEnvironmentImpl() );
}
private void register( final String name, final Object service )
{
this.serviceMap.put( name, service );
}
public Map<String, Object> getServiceMap()
{
return ImmutableMap.copyOf( this.serviceMap );
}
@Autowired
@Qualifier("localClient")
public void setClient(final LocalClient client)
{
register( "client", client );
}
}