/******************************************************************************* * Copyright (c) 2006, 2011 Intel Corporation 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: * Intel Corporation - Initial API and implementation *******************************************************************************/ package org.eclipse.cdt.managedbuilder.internal.buildmodel; import org.eclipse.cdt.managedbuilder.buildmodel.BuildDescriptionManager; import org.eclipse.cdt.managedbuilder.buildmodel.IBuildDescription; import org.eclipse.cdt.managedbuilder.buildmodel.IBuildDescriptionFactory; import org.eclipse.cdt.managedbuilder.core.IConfiguration; import org.eclipse.core.resources.IResourceDelta; import org.eclipse.core.runtime.CoreException; public class DefaultBuildDescriptionFactory implements IBuildDescriptionFactory { static private DefaultBuildDescriptionFactory fInstance; protected DefaultBuildDescriptionFactory(){ } public static DefaultBuildDescriptionFactory getInstance(){ if(fInstance == null) fInstance = new DefaultBuildDescriptionFactory(); return fInstance; } /* (non-Javadoc) * @see org.eclipse.cdt.managedbuilder.builddescription.IBuildDescriptionFactory#createBuildDescription(org.eclipse.cdt.managedbuilder.core.IConfiguration, org.eclipse.core.resources.IResourceDelta, int) */ @Override public IBuildDescription createBuildDescription(IConfiguration cfg, IResourceDelta delta, int flags) throws CoreException { return createBuildDescription(cfg, null, delta, flags); } /* (non-Javadoc) * @see org.eclipse.cdt.managedbuilder.builddescription.IBuildDescriptionFactory#createBuildDescription(org.eclipse.cdt.managedbuilder.core.IConfiguration, org.eclipse.core.resources.IResourceDelta, int) */ public IBuildDescription createBuildDescription(IConfiguration cfg, IConfigurationBuildState bs, IResourceDelta delta, int flags) throws CoreException { BuildDescription info = new BuildDescription(); info.init(cfg, bs, delta, flags); return info; } /* (non-Javadoc) * @see org.eclipse.cdt.managedbuilder.builddescription.IBuildDescriptionFactory#getSupportedMethods() */ @Override public int getSupportedMethods() { return BuildDescriptionManager.REMOVED | BuildDescriptionManager.REBUILD | BuildDescriptionManager.DEPFILES | BuildDescriptionManager.DEPS; } }