From cbf2aed7453b7ac4e9282aba2910bce1bd1a75ff Mon Sep 17 00:00:00 2001 From: Eike Stepper Date: Tue, 1 May 2012 11:53:32 +0200 Subject: [343084] Add security infos to BaseCDORevision and adjust the framework accordingly https://bugs.eclipse.org/bugs/show_bug.cgi?id=343084 --- .../spi/common/revision/InternalCDORevision.java | 250 +++++++++++---------- 1 file changed, 129 insertions(+), 121 deletions(-) (limited to 'plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/InternalCDORevision.java') diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/InternalCDORevision.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/InternalCDORevision.java index dbce8a0caf..9d646837ba 100644 --- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/InternalCDORevision.java +++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/InternalCDORevision.java @@ -1,121 +1,129 @@ -/* - * Copyright (c) 2004 - 2012 Eike Stepper (Berlin, Germany) 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: - * Eike Stepper - initial API and implementation - * Simon McDuff - maintenance - */ -package org.eclipse.emf.cdo.spi.common.revision; - -import org.eclipse.emf.cdo.common.branch.CDOBranch; -import org.eclipse.emf.cdo.common.branch.CDOBranchPoint; -import org.eclipse.emf.cdo.common.id.CDOID; -import org.eclipse.emf.cdo.common.id.CDOIDProvider; -import org.eclipse.emf.cdo.common.model.CDOClassInfo; -import org.eclipse.emf.cdo.common.protocol.CDODataInput; -import org.eclipse.emf.cdo.common.protocol.CDODataOutput; -import org.eclipse.emf.cdo.common.revision.CDOList; -import org.eclipse.emf.cdo.common.revision.CDORevision; -import org.eclipse.emf.cdo.common.revision.CDORevisionData; - -import org.eclipse.emf.ecore.EStructuralFeature; - -import java.io.IOException; - -/** - * @author Eike Stepper - * @since 2.0 - */ -public interface InternalCDORevision extends CDORevision, CDORevisionData, CDOReferenceAdjustable -{ - /** - * @since 3.0 - */ - public CDOClassInfo getClassInfo(); - - public void setID(CDOID id); - - public void setVersion(int version); - - /** - * @since 3.0 - */ - public void setBranchPoint(CDOBranchPoint branchPoint); - - public void setRevised(long revised); - - public void setResourceID(CDOID resourceID); - - public void setContainerID(Object containerID); - - public void setContainingFeatureID(int containingFeatureID); - - /** - * @since 3.0 - */ - public void adjustForCommit(CDOBranch branch, long timeStamp); - - public void add(EStructuralFeature feature, int index, Object value); - - public void clear(EStructuralFeature feature); - - public Object move(EStructuralFeature feature, int targetIndex, int sourceIndex); - - public Object remove(EStructuralFeature feature, int index); - - public Object set(EStructuralFeature feature, int index, Object value); - - public void unset(EStructuralFeature feature); - - /** - * Should never return {@link InternalCDORevision#NIL} - */ - public Object getValue(EStructuralFeature feature); - - public Object setValue(EStructuralFeature feature, Object value); - - public void setList(EStructuralFeature feature, InternalCDOList list); - - public CDOList getList(EStructuralFeature feature); - - /** - * @param initialCapacity - * the initialCapacity of a new list to be created if this revision has no list so far (its size will always - * be 0), or -1 to skip list creation and return null in this case. - */ - public CDOList getList(EStructuralFeature feature, int initialCapacity); - - /** - * @since 3.0 - */ - public void read(CDODataInput in) throws IOException; - - /** - * @since 3.0 - */ - public void write(CDODataOutput out, int referenceChunk) throws IOException; - - /** - * @since 3.0 - */ - public void convertEObjects(CDOIDProvider oidProvider); - - /** - * @since 3.0 - */ - public InternalCDORevisionDelta compare(CDORevision origin); - - /** - * @since 3.0 - */ - public InternalCDORevision copy(); - - /** - * @since 4.0 - */ - public void freeze(); -} +/* + * Copyright (c) 2004 - 2012 Eike Stepper (Berlin, Germany) 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: + * Eike Stepper - initial API and implementation + * Simon McDuff - maintenance + */ +package org.eclipse.emf.cdo.spi.common.revision; + +import org.eclipse.emf.cdo.common.branch.CDOBranch; +import org.eclipse.emf.cdo.common.branch.CDOBranchPoint; +import org.eclipse.emf.cdo.common.id.CDOID; +import org.eclipse.emf.cdo.common.id.CDOIDProvider; +import org.eclipse.emf.cdo.common.model.CDOClassInfo; +import org.eclipse.emf.cdo.common.protocol.CDODataInput; +import org.eclipse.emf.cdo.common.protocol.CDODataOutput; +import org.eclipse.emf.cdo.common.revision.CDOList; +import org.eclipse.emf.cdo.common.revision.CDORevision; +import org.eclipse.emf.cdo.common.revision.CDORevisionData; +import org.eclipse.emf.cdo.common.security.CDOPermission; + +import org.eclipse.emf.ecore.EStructuralFeature; + +import java.io.IOException; + +/** + * @author Eike Stepper + * @since 2.0 + * @noextend This interface is not intended to be extended by clients. + * @noimplement This interface is not intended to be implemented by clients. + */ +public interface InternalCDORevision extends CDORevision, CDORevisionData, CDOReferenceAdjustable +{ + /** + * @since 3.0 + */ + public CDOClassInfo getClassInfo(); + + public void setID(CDOID id); + + public void setVersion(int version); + + /** + * @since 3.0 + */ + public void setBranchPoint(CDOBranchPoint branchPoint); + + public void setRevised(long revised); + + public void setResourceID(CDOID resourceID); + + public void setContainerID(Object containerID); + + public void setContainingFeatureID(int containingFeatureID); + + /** + * @since 3.0 + */ + public void adjustForCommit(CDOBranch branch, long timeStamp); + + public void add(EStructuralFeature feature, int index, Object value); + + public void clear(EStructuralFeature feature); + + public Object move(EStructuralFeature feature, int targetIndex, int sourceIndex); + + public Object remove(EStructuralFeature feature, int index); + + public Object set(EStructuralFeature feature, int index, Object value); + + public void unset(EStructuralFeature feature); + + /** + * Should never return {@link InternalCDORevision#NIL} + */ + public Object getValue(EStructuralFeature feature); + + public Object setValue(EStructuralFeature feature, Object value); + + public void setList(EStructuralFeature feature, InternalCDOList list); + + public CDOList getList(EStructuralFeature feature); + + /** + * @param initialCapacity + * the initialCapacity of a new list to be created if this revision has no list so far (its size will always + * be 0), or -1 to skip list creation and return null in this case. + */ + public CDOList getList(EStructuralFeature feature, int initialCapacity); + + /** + * @since 3.0 + */ + public void read(CDODataInput in) throws IOException; + + /** + * @since 3.0 + */ + public void write(CDODataOutput out, int referenceChunk) throws IOException; + + /** + * @since 3.0 + */ + public void convertEObjects(CDOIDProvider oidProvider); + + /** + * @since 3.0 + */ + public InternalCDORevisionDelta compare(CDORevision origin); + + /** + * @since 3.0 + */ + public InternalCDORevision copy(); + + /** + * @since 4.1 + */ + public void setPermission(CDOPermission permission); + + /** + * @since 4.0 + */ + public void freeze(); +} -- cgit v1.2.3