/** * <copyright> * * Copyright (c) 2009, 2010 Springsite BV (The Netherlands) and others * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Martin Taal - Initial API and implementation * * </copyright> * * $Id: ORMNamingStrategy.java,v 1.9 2011/08/26 05:34:12 mtaal Exp $ */ package org.eclipse.emf.texo.orm.annotator; import org.eclipse.emf.texo.component.ComponentProvider; import org.eclipse.emf.texo.orm.ormannotations.EPackageORMAnnotation; /** * Creates new instances of the {@link ORMNamingStrategy}. Can be overridden/set to create your own instances of the * {@link ORMNamingStrategy}. * * @author <a href="mtaal@elver.org">Martin Taal</a> */ public class ORMNamingStrategyProvider { private static ORMNamingStrategyProvider instance = new ORMNamingStrategyProvider(); public static ORMNamingStrategyProvider getInstance() { return instance; } public static void setInstance(ORMNamingStrategyProvider instance) { ORMNamingStrategyProvider.instance = instance; } public ORMNamingStrategy createORMNamingStrategy(EPackageORMAnnotation ormAnnotation) { final ORMNamingStrategy namingStrategy = ComponentProvider.getInstance().newInstance(ORMNamingStrategy.class); namingStrategy.setePackageORMAnnotation(ormAnnotation); return namingStrategy; } }