1 /******************************************************************************* 2 * Copyright (c) 2000, 2006 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.pde.core.plugin; 12 13 14 /** 15 * This type of model is created by parsing the manifest file. 16 * If the file is a workspace resource, it will be 17 * available as the underlying resource of the model. 18 * The model may be read-only or editable. 19 * It will also make a reference to the build properties 20 * model when created. The reference will be of the 21 * same type as the model itself: if the model is 22 * editable, it will attempt to obtain an exclusive 23 * editable copy of build.properties model. 24 * <p> 25 * The fragment model can be disabled. Disabling the 26 * model will not change its data. Users of the 27 * model will have to decide if the disabled state 28 * if of any importance to them or not. 29 * <p> 30 * The model is capable of notifying listeners 31 * about changes. An attempt to change a read-only 32 * model will result in a CoreException. 33 */ 34 public interface IFragmentModel extends IPluginModelBase { 35 /** 36 * Returns a top-level model object. 37 * 38 * @return a root model instance 39 */ 40 IFragment getFragment(); 41 } 42