org.apache.jackrabbit.spi.commons.SessionInfoImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.apache.sling.feature.analyser Show documentation
Show all versions of org.apache.sling.feature.analyser Show documentation
A feature describes an OSGi system
/*
* 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.spi.commons;
import org.apache.jackrabbit.spi.SessionInfo;
import javax.jcr.RepositoryException;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* SessionInfoImpl
is a serializable bean based implementation of
* SessionInfo
.
*/
public class SessionInfoImpl implements SessionInfo, Serializable {
/**
* The userId or null
if unknown.
*/
private String userId;
/**
* The user data or null
.
*/
private String userData;
/**
* The name of the workspace to connect to or null
if this
* session info refers to the default workspace.
*/
private String workspaceName;
/**
* The list of lock tokens.
*/
private List lockTokens = new ArrayList();
/**
* Default constructor
*/
public SessionInfoImpl() {
}
/**
* Sets the userId.
*
* @param userId the userId or null
if unknown.
*/
public void setUserID(String userId) {
this.userId = userId;
}
/**
* Sets the name of the workspace to connect to.
*
* @param workspaceName the name of the workspace or null
if
* this session info refers to the default workspace.
*/
public void setWorkspacename(String workspaceName) {
this.workspaceName = workspaceName;
}
//-------------------------< SessionInfo >----------------------------------
/**
* {@inheritDoc}
*/
public String getUserID() {
return userId;
}
/**
* {@inheritDoc}
*/
public String getWorkspaceName() {
return workspaceName;
}
/**
* {@inheritDoc}
*/
public String[] getLockTokens() {
return lockTokens.toArray(new String[lockTokens.size()]);
}
/**
* {@inheritDoc}
*/
public void addLockToken(String s) {
lockTokens.add(s);
}
/**
* {@inheritDoc}
*/
public void removeLockToken(String s) {
lockTokens.remove(s);
}
/**
* {@inheritDoc}
*/
public void setUserData(String userData) throws RepositoryException {
this.userData = userData;
}
/**
* Return the user data set via {@link #setUserData(String)}
*
* @return userData
*/
public String getUserData() {
return userData;
}
}