/** * Copyright (C) Intersect 2012. * * This module contains Proprietary Information of Intersect, * and should be treated as Confidential. */ package au.org.intersect.exsite9.service.factory; import javax.persistence.EntityManagerFactory; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.services.AbstractServiceFactory; import org.eclipse.ui.services.IServiceLocator; import au.org.intersect.exsite9.dao.factory.MetadataAttributeDAOFactory; import au.org.intersect.exsite9.dao.factory.MetadataCategoryDAOFactory; import au.org.intersect.exsite9.service.MetadataCategoryService; /** * Factory responsible for creating {@link MetadataCategoryService} */ public final class MetadataCategoryServiceFactory extends AbstractServiceFactory { /** * @{inheritDoc} */ @Override @SuppressWarnings("rawtypes") public Object create(Class serviceInterface, IServiceLocator parentLocator, IServiceLocator locator) { final EntityManagerFactory emf = (EntityManagerFactory) PlatformUI.getWorkbench().getService(EntityManagerFactory.class); final MetadataCategoryDAOFactory mdcDAOFactory = new MetadataCategoryDAOFactory(); final MetadataAttributeDAOFactory mdaDAOFactory = new MetadataAttributeDAOFactory(); return new MetadataCategoryService(emf, mdcDAOFactory, mdaDAOFactory); } }