blob: e43ee68260f0197f6cae3fc509838cfc5f160991 [file] [log] [blame]
/**
* Copyright (c) 2011, 2019 Mia-Software and others.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v20.html
*
* Contributors:
* Grégoire Dupé (Mia-Software) - Bug 334000 Simple catalog manager
* Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
* Grégoire Dupé (Mia-Software) - Bug 477657 - The catalog manager should be able to manage workspace model
*/
package org.eclipse.modisco.facet.util.emf.core;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.modisco.facet.util.emf.catalog.CatalogSet;
import org.eclipse.modisco.facet.util.emf.core.internal.catalog.CatalogSetManager;
/**
* Manager for catalogs containing registered elements defined in models.
*
* @since 0.2
* @noextend This interface is not intended to be extended by clients.
*/
@Deprecated
public interface ICatalogManager {
/**
* Return <code>true</code> if the eObject can be managed as a catalog entry.
*
* @param root
* the root element of a catalog
* @return whether the given element is of the right type to be a catalog root
*/
public boolean canBeManaged(EObject root);
/**
* This method is called by {@link CatalogSetManager} when a model registration that can be
* managed (according to {@link ICatalogManager#canBeManaged(EObject) canBeManaged}) is detected
* while loading. This method adds the given root model element to the catalog.
*
* @param root
* a root element of a model that should be added to the catalog
*/
public void manage(EObject root);
/**
* This method is called by the {@link CatalogSetManager} after the instantiation of this
* {@link ICatalogManager}. This method must attach the catalog(s) managed by this
* {@link ICatalogManager} to the given <code>catalogSet</code>.
*
* @param catalogSet
* the {@link CatalogSet} to which the catalog managed by this
* {@link ICatalogManager} should be attached
*/
public void setCatalogSet(CatalogSet catalogSet);
}