/******************************************************************************* * Copyright © 2011, 2013 IBM 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: * IBM Corporation - initial API and implementation * *******************************************************************************/ /** * */ package org.eclipse.edt.compiler.generationServer.parts; /** * This interface provides methods to return EGL Part information. * * IPartInfo objects can be obtained the PartInfoFactory class. * * @see com.ibm.etools.egl.ui.parts.PartInfoFactory * */ public interface IPartInfo extends IElementInfo{ /** * @return Returns an array of all the parts that are referenced within this part's scope. * * */ IPartInfo[] getAllReferencedParts(); /** * @param Adds a referenced part */ void addReferencedPart(IPartInfo partInfo); void addReferencedElement(IElementInfo elementInfo); /** * @return Returns the packagename of the part. The name will be a '.' delimited String of packages */ String getPackageName(); /** * @return Returns the full pathname of the file that the part is defined in. */ String getResourceName(); /** * @return Returns the EGL source, starting at the given offset, for the given length. */ String getSource(int offset, int len); /** * @return Returns an array of parts that are directly referenced by this part */ IPartInfo[] getReferencedParts(); /** * @return Returns an array of elements that are directly referenced by this part */ IElementInfo[] getReferencedElements(); /** * @return Returns the subType name of the part (or null if it does not have a subType) */ String getSubType(); }