All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.jackrabbit.rmi.remote.RemoteVersionHistory Maven / Gradle / Ivy

Go to download

JCR-RMI is a transparent Remote Method Invocation (RMI) layer for the Content Repository for Java Technology API (JCR). The layer makes it possible to remotely access JCR content repositories.

The newest version!
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.apache.jackrabbit.rmi.remote;

import java.rmi.RemoteException;

import javax.jcr.RepositoryException;

/**
 * @deprecated RMI support is deprecated and will be removed in a future version of Jackrabbit; see Jira ticket JCR-4972 for more information.
 * 

* Remote version of the JC * {@link javax.jcr.version.VersionHistory VersionHistory} interface. Used by * the * {@link org.apache.jackrabbit.rmi.server.ServerVersionHistory ServerVersionHistory} * and * {@link org.apache.jackrabbit.rmi.client.ClientVersionHistory ClientVersionHistory} * adapters to provide transparent RMI access to remote version histories. *

* The methods in this interface are documented only with a reference * to a corresponding VersionHistory method. The remote object will simply * forward the method call to the underlying VersionHistory instance. Argument * and return values, as well as possible exceptions, are copied over the * network. Complex return values (like Versions) are returned as remote * references to the corresponding remote interfaces. Iterator values * are transmitted as object arrays. RMI errors are signaled with * RemoteExceptions. * * @see javax.jcr.version.Version * @see org.apache.jackrabbit.rmi.client.ClientVersionHistory * @see org.apache.jackrabbit.rmi.server.ServerVersionHistory */ @Deprecated(forRemoval = true) public interface RemoteVersionHistory extends RemoteNode { /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getVersionableUUID()} VersionHistory.getVersionableUUID()} * method. * * @return the uuid of the versionable node * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors * @deprecated As of JCR 2.0, {@link #getVersionableIdentifier} should be * used instead. */ String getVersionableUUID() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getVersionableIdentifier()} VersionHistory.getVersionableIdentifier()} * method. * * @return the identifier of the versionable node * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ String getVersionableIdentifier() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getRootVersion() VersionHistory.getRootVersion()} * method. * * @return a Version object. * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ RemoteVersion getRootVersion() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getAllLinearVersions() VersionHistory.getAllLinearVersions()} * method. * * @return linear remote versions * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ RemoteIterator getAllLinearVersions() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getAllVersions() VersionHistory.getAllVersions()} * method. * * @return remote versions * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ RemoteIterator getAllVersions() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getAllLinearFrozenNodes() VersionHistory.getAllLinearFrozenNodes()} * method. * * @return linear remote frozen nodes * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ RemoteIterator getAllLinearFrozenNodes() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getAllFrozenNodes() VersionHistory.getAllFrozenNodes()} * method. * * @return remote frozen nodes * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ RemoteIterator getAllFrozenNodes() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getVersion(String) VersionHistory.getVersion(String)} * method. * * @param versionName a version name * @return a Version object. * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ RemoteVersion getVersion(String versionName) throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getVersionByLabel(String) VersionHistory.getVersionByLabel(String)} * method. * * @param label a version label * @return a Version object. * @throws RepositoryException if an error occurs. * @throws RemoteException on RMI errors */ RemoteVersion getVersionByLabel(String label) throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#addVersionLabel(String, String, boolean) * VersionHistory.addVersionLabel(String, String, boolean)} * method. * * @param versionName the name of the version to which the label is to be added. * @param label the label to be added. * @param moveLabel if true, then if label is already assigned to a version in * this version history, it is moved to the new version specified; if false, then attempting * to assign an already used label will throw a VersionException. * * @throws RepositoryException if another error occurs. * @throws RemoteException on RMI errors */ void addVersionLabel(String versionName, String label, boolean moveLabel) throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#removeVersionLabel(String) VersionHistory.removeVersionLabel(String)} * method. * * @param label a version label * @throws RepositoryException if another error occurs. * @throws RemoteException on RMI errors */ void removeVersionLabel(String label) throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#hasVersionLabel(String) VersionHistory.hasVersionLabel(String)} * method. * * @param label a version label * @return a boolean * @throws RepositoryException on repository errors * @throws RemoteException on RMI errors */ boolean hasVersionLabel(String label) throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#hasVersionLabel(javax.jcr.version.Version, String) hasVersionLabel(Version, String)} * method. * * @param versionUUID The UUID of the version whose labels are to be returned. * @param label a version label * @return a boolean. * @throws RepositoryException if another error occurs. * @throws RemoteException on RMI errors */ boolean hasVersionLabel(String versionUUID, String label) throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getVersionLabels() VersionHistory.getVersionLabels()} * method. * * @return a String array containing all the labels of the version history * @throws RepositoryException on repository errors * @throws RemoteException on RMI errors */ String[] getVersionLabels() throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#getVersionLabels(javax.jcr.version.Version) VersionHistory.getVersionLabels(Version)} * method. * * @param versionUUID The UUID of the version whose labels are to be returned. * @return a String array containing all the labels of the given version * @throws RepositoryException if another error occurs. * @throws RemoteException on RMI errors */ String[] getVersionLabels(String versionUUID) throws RepositoryException, RemoteException; /** * Remote version of the * {@link javax.jcr.version.VersionHistory#removeVersion(String) VersionHistory.removeVersion(String)} * method. * * @param versionName the name of a version in this version history. * @throws RepositoryException if another error occurs. * @throws RemoteException on RMI errors */ void removeVersion(String versionName) throws RepositoryException, RemoteException; }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy