org.eclipse.emf.edit.provider.IWrapperItemProvider Maven / Gradle / Ivy
/**
* Copyright (c) 2004 IBM Corporation 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:
* IBM - Initial API and implementation
*/
package org.eclipse.emf.edit.provider;
import org.eclipse.emf.ecore.EStructuralFeature;
/**
* The base interface for a value wrapper that can implement item provider interfaces.
*/
public interface IWrapperItemProvider extends IDisposable
{
/**
* Returns the wrapped value.
*/
Object getValue();
/**
* Returns the object that owns the value.
*/
Object getOwner();
/**
* Returns the structural feature through which the value can be set and retrieved, or null if the feature is
* unknown or not applicable.
*/
EStructuralFeature getFeature();
/**
* The index at which the value is located, or {@link org.eclipse.emf.edit.command.CommandParameter#NO_INDEX} if the
* index isn't known to the wrapper. If {@link #getFeature} is non-null, this index is within that feature.
*/
int getIndex();
/**
* Sets the index. Has no effect if the index isn't known to the wrapper.
*/
void setIndex(int index);
}