package org.geoserver.catalog.hibernate; import java.util.logging.Logger; import org.geoserver.catalog.AttributeTypeInfo; import org.geoserver.catalog.AttributionInfo; import org.geoserver.catalog.CatalogFactory; import org.geoserver.catalog.CoverageDimensionInfo; import org.geoserver.catalog.CoverageInfo; import org.geoserver.catalog.CoverageStoreInfo; import org.geoserver.catalog.DataStoreInfo; import org.geoserver.catalog.FeatureTypeInfo; import org.geoserver.catalog.LayerGroupInfo; import org.geoserver.catalog.LayerInfo; import org.geoserver.catalog.LegendInfo; import org.geoserver.catalog.MapInfo; import org.geoserver.catalog.MetadataLinkInfo; import org.geoserver.catalog.StyleInfo; import org.geoserver.catalog.hibernate.beans.LayerGroupInfoImplHb; import org.geoserver.catalog.hibernate.beans.LayerInfoImplHb; import org.geoserver.catalog.impl.AttributeTypeInfoImpl; import org.geoserver.catalog.impl.AttributionInfoImpl; import org.geoserver.catalog.impl.CoverageDimensionImpl; import org.geoserver.catalog.impl.CoverageInfoImpl; import org.geoserver.catalog.impl.CoverageStoreInfoImpl; import org.geoserver.catalog.impl.DataStoreInfoImpl; import org.geoserver.catalog.impl.FeatureTypeInfoImpl; import org.geoserver.catalog.impl.LegendInfoImpl; import org.geoserver.catalog.impl.MapInfoImpl; import org.geoserver.catalog.impl.MetadataLinkInfoImpl; import org.geoserver.catalog.impl.NamespaceInfoImpl; import org.geoserver.catalog.impl.StyleInfoImpl; import org.geoserver.catalog.impl.WorkspaceInfoImpl; public class HibCatalogFactoryImpl implements CatalogFactory { private final static Logger LOGGER = Logger.getLogger(HibCatalogFactoryImpl.class.getName()); private final HibCatalogImpl catalog; /** * @param catalog */ public HibCatalogFactoryImpl(HibCatalogImpl catalog) { this.catalog = catalog; } public DataStoreInfo createDataStore() { return new DataStoreInfoImpl(catalog); } public MetadataLinkInfo createMetadataLink() { return new MetadataLinkInfoImpl(); } public CoverageStoreInfo createCoverageStore() { return new CoverageStoreInfoImpl(catalog); } public FeatureTypeInfo createFeatureType() { return new FeatureTypeInfoImpl(catalog); } public CoverageInfo createCoverage() { return new CoverageInfoImpl(catalog); } public LayerInfo createLayer() { return new LayerInfoImplHb(); } public MapInfo createMap() { return new MapInfoImpl(); } public StyleInfo createStyle() { return new StyleInfoImpl(catalog); } public NamespaceInfoImpl createNamespace() { return new NamespaceInfoImpl(); } public <T> T create(Class<T> clazz) { LOGGER.severe("TODO"); return null; } public AttributeTypeInfo createAttribute() { return new AttributeTypeInfoImpl(); } public LayerGroupInfo createLayerGroup() { return new LayerGroupInfoImplHb(); } public LegendInfo createLegend() { return new LegendInfoImpl(); } public WorkspaceInfoImpl createWorkspace() { return new WorkspaceInfoImpl(); } public AttributionInfo createAttribution() { return new AttributionInfoImpl(); } public CoverageDimensionInfo createCoverageDimension() { return new CoverageDimensionImpl(); } }