org.esupportail.portal.channels.CWebdav.config
Class Space

java.lang.Object
  extended byorg.esupportail.portal.channels.CWebdav.config.Space

public class Space
extends java.lang.Object

Id: Space.java,v 1.0 9 juil. 2004
Copyright (c) 2004 Esup Portail (www.esup-portail.org)
Classes: Space
Original Author: Yohan Colmant
This represents a file space on the server


Field Summary
private  ServerAccess access
          The attribute used to access the server
private  java.lang.String aclGroupPrefix
          The group prefix for the ACL
private  java.lang.String aclNamespace
          The ACL namespace
private  java.lang.String aclUserPrefix
          The user prefix for the ACL
private  java.lang.String actionType
          The channel action type
static java.lang.String AUTH_ASKED
          ASKED authentication
static java.lang.String AUTH_CAS
          CAS authentication
static java.lang.String AUTH_TRUSTED
          TRUSTED authentication
private  java.lang.String authenticationMode
          The authentication mode.
private  java.util.ArrayList authorizations
          The authorization list for this space
private  AbstractChannelAction channelAction
          To manage the actions in funtion of the access class
private  java.lang.String channelActionClass
          The class name used to manage the actions
private  java.lang.String cifsDisablePlainTextPassword
          The cifs disable plain text password
private  java.lang.String cifsDomain
          The cifs domain
private  java.lang.String cifsResolveOrder
          The Cifs resolve order
private  java.util.Vector currentPath
          The currentPath used
private  java.lang.String key
          The space key
private  java.lang.String label
          The label of this space
protected static org.apache.commons.logging.Log log
          Logger object
private  java.lang.String login
          The trusted login if trusted authentication.
private  java.lang.String password
          The password if trusted authentication, or is asked authentication
private  boolean personnalSpace
          If this space is a personnal one
private  java.lang.String serverAccessClass
          The class name used to manage the actions
private  java.lang.String serverType
          The server type
private  java.lang.String url
          The server url
 
Constructor Summary
Space()
           
 
Method Summary
 void addPathElement(java.lang.String pathElement)
          Add a path element to the current directory
 boolean canRead(ServerAccess access)
          Check if we are authorized to read this space
 void checkPath(org.jasig.portal.security.IPerson person, java.lang.String trustedAttributeName, java.lang.String trustedAttributeValue)
          We check if the is a {...} form in the path.
 java.lang.String getAclGroupPrefix()
           
 java.lang.String getAclNamespace()
           
 java.lang.String getAclUserPrefix()
           
 java.lang.String getActionType()
           
 java.util.ArrayList getAuthorization()
          return the authorization list
 java.lang.String getChannelActionClass()
           
 AbstractChannelAction getChannelActionObject()
          Get the channel action object
 java.lang.String getCifsDisablePlainTextPassword()
           
 java.lang.String getCifsDomain()
           
 java.lang.String getCifsResolveOrder()
           
 java.lang.String getKey()
           
 java.lang.String getLabel()
           
 java.lang.String getLogin()
           
 java.lang.String getPassword()
           
 java.lang.String getPath()
           
private  java.lang.String getPath(java.util.Vector currentPath)
          Return the path due to a current path vector
 java.lang.String getPathElementAt(int index)
          Return the current element path at the good index
 int getPathSize()
          Return the path size
 java.lang.String getServerAccessClass()
           
 ServerAccess getServerAccessObject()
          Return the object used to access the server
 java.lang.String getServerType()
           
 java.lang.String getUrl()
           
 boolean isAskedAuthentication()
          If the selected authentication is ASKED
 boolean isCasAuthentication()
          If the selected authentication is CAS
 boolean isPersonnalSpace()
           
 boolean isTrustedAuthentication()
          If the selected authentication is TRUSTED
 void removePathElement(int index)
          Remove an element from the current path
 void setAclGroupPrefix(java.lang.String aclGroupPrefix)
           
 void setAclNamespace(java.lang.String aclNamespace)
           
 void setAclUserPrefix(java.lang.String aclUserPrefix)
           
 void setActionType(java.lang.String actionType)
           
 void setAuthenticationMode(java.lang.String authenticationMode)
           
 void setAuthorization(AuthorizationSpaceParameter authorization)
          add a new authorization to the list
 void setChannelActionClass(java.lang.String channelActionClass)
           
 boolean setChannelActionObject(java.util.ArrayList spaces, ChannelConfiguration config, BufferAction buffer, java.lang.String userPortalLogin, java.util.Vector userGroups)
          Set the object used to manage the actions of the channel
 void setCifsDisablePlainTextPassword(java.lang.String cifsDisablePlainTextPassword)
           
 void setCifsDomain(java.lang.String cifsDomain)
           
 void setCifsResolveOrder(java.lang.String cifsResolveOrder)
           
 void setKey(java.lang.String key)
           
 void setLabel(java.lang.String label)
           
 void setLogin(java.lang.String login)
           
 void setPassword(java.lang.String password)
           
 void setPath(java.lang.String path)
           
 void setPersonnalSpace(boolean personnalSpace)
           
 void setServerAccessClass(java.lang.String serverAccessClass)
           
 boolean setServerAccessObject()
          Set the server access object for this space
 void setServerAccessObject(ServerAccess access)
          Set the server access object
 void setServerType(java.lang.String serverType)
           
 void setUrl(java.lang.String url)
           
 boolean supportsAcl()
           
 java.lang.String toString()
          Return a String representation of this space
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

log

protected static final org.apache.commons.logging.Log log
Logger object


key

private java.lang.String key
The space key


label

private java.lang.String label
The label of this space


url

private java.lang.String url
The server url


serverType

private java.lang.String serverType
The server type


actionType

private java.lang.String actionType
The channel action type


channelActionClass

private java.lang.String channelActionClass
The class name used to manage the actions


serverAccessClass

private java.lang.String serverAccessClass
The class name used to manage the actions


authenticationMode

private java.lang.String authenticationMode
The authentication mode. "cas" or "trusted"


AUTH_CAS

public static final java.lang.String AUTH_CAS
CAS authentication

See Also:
Constant Field Values

AUTH_TRUSTED

public static final java.lang.String AUTH_TRUSTED
TRUSTED authentication

See Also:
Constant Field Values

AUTH_ASKED

public static final java.lang.String AUTH_ASKED
ASKED authentication

See Also:
Constant Field Values

login

private java.lang.String login
The trusted login if trusted authentication. The portal login else


password

private java.lang.String password
The password if trusted authentication, or is asked authentication


currentPath

private java.util.Vector currentPath
The currentPath used


access

private ServerAccess access
The attribute used to access the server


channelAction

private AbstractChannelAction channelAction
To manage the actions in funtion of the access class


aclNamespace

private java.lang.String aclNamespace
The ACL namespace


aclUserPrefix

private java.lang.String aclUserPrefix
The user prefix for the ACL


aclGroupPrefix

private java.lang.String aclGroupPrefix
The group prefix for the ACL


authorizations

private java.util.ArrayList authorizations
The authorization list for this space


cifsDomain

private java.lang.String cifsDomain
The cifs domain


cifsResolveOrder

private java.lang.String cifsResolveOrder
The Cifs resolve order


cifsDisablePlainTextPassword

private java.lang.String cifsDisablePlainTextPassword
The cifs disable plain text password


personnalSpace

private boolean personnalSpace
If this space is a personnal one

Constructor Detail

Space

public Space()
Method Detail

getAuthorization

public java.util.ArrayList getAuthorization()
return the authorization list

Returns:
the authorization list

setAuthorization

public void setAuthorization(AuthorizationSpaceParameter authorization)
add a new authorization to the list

Parameters:
authorization - the authorization to add

getCifsDisablePlainTextPassword

public java.lang.String getCifsDisablePlainTextPassword()
Returns:
Returns the cifsDisablePlainTextPassword.

setCifsDisablePlainTextPassword

public void setCifsDisablePlainTextPassword(java.lang.String cifsDisablePlainTextPassword)
Parameters:
cifsDisablePlainTextPassword - The cifsDisablePlainTextPassword to set.

getCifsDomain

public java.lang.String getCifsDomain()
Returns:
Returns the cifsDomain.

setCifsDomain

public void setCifsDomain(java.lang.String cifsDomain)
Parameters:
cifsDomain - The cifsDomain to set.

getCifsResolveOrder

public java.lang.String getCifsResolveOrder()
Returns:
Returns the cifsResolveOrder.

setCifsResolveOrder

public void setCifsResolveOrder(java.lang.String cifsResolveOrder)
Parameters:
cifsResolveOrder - The cifsResolveOrder to set.

getActionType

public java.lang.String getActionType()
Returns:
Returns the actionType.

setActionType

public void setActionType(java.lang.String actionType)
Parameters:
actionType - The actionType to set.

getServerType

public java.lang.String getServerType()
Returns:
Returns the serverType.

setServerType

public void setServerType(java.lang.String serverType)
Parameters:
serverType - The serverType to set.

getAclGroupPrefix

public java.lang.String getAclGroupPrefix()
Returns:
Returns the aclGroupPrefix.

setAclGroupPrefix

public void setAclGroupPrefix(java.lang.String aclGroupPrefix)
Parameters:
aclGroupPrefix - The aclGroupPrefix to set.

getAclNamespace

public java.lang.String getAclNamespace()
Returns:
Returns the aclNamespace.

setAclNamespace

public void setAclNamespace(java.lang.String aclNamespace)
Parameters:
aclNamespace - The aclNamespace to set.

supportsAcl

public boolean supportsAcl()
Returns:
Returns the supportAcl.

getAclUserPrefix

public java.lang.String getAclUserPrefix()
Returns:
Returns the aclUserPrefix.

setAclUserPrefix

public void setAclUserPrefix(java.lang.String aclUserPrefix)
Parameters:
aclUserPrefix - The aclUserPrefix to set.

isPersonnalSpace

public boolean isPersonnalSpace()
Returns:
Returns the personnalSpace.

setPersonnalSpace

public void setPersonnalSpace(boolean personnalSpace)
Parameters:
personnalSpace - The personnalSpace to set.

isCasAuthentication

public boolean isCasAuthentication()
                            throws PropertiesException
If the selected authentication is CAS

Returns:
trus is cas is selected
Throws:
PropertiesException

isTrustedAuthentication

public boolean isTrustedAuthentication()
                                throws PropertiesException
If the selected authentication is TRUSTED

Returns:
true if trusted is selected
Throws:
PropertiesException

isAskedAuthentication

public boolean isAskedAuthentication()
                              throws PropertiesException
If the selected authentication is ASKED

Returns:
true if asked is selected
Throws:
PropertiesException

getLogin

public java.lang.String getLogin()
Returns:
Returns the login.

setLogin

public void setLogin(java.lang.String login)
Parameters:
login - The login to set.

getPassword

public java.lang.String getPassword()
                             throws PropertiesException
Returns:
Returns the password.
Throws:
PropertiesException

setPassword

public void setPassword(java.lang.String password)
Parameters:
password - The trustedPassword to set.

getUrl

public java.lang.String getUrl()
                        throws PropertiesException
Returns:
Returns the url.
Throws:
PropertiesException

setUrl

public void setUrl(java.lang.String url)
Parameters:
url - The url to set.

setAuthenticationMode

public void setAuthenticationMode(java.lang.String authenticationMode)
Parameters:
authenticationMode - The authenticationMode to set.

getServerAccessClass

public java.lang.String getServerAccessClass()
Returns:
Returns the serverAccessClass.

setServerAccessClass

public void setServerAccessClass(java.lang.String serverAccessClass)
Parameters:
serverAccessClass - The serverAccessClass to set.

getChannelActionClass

public java.lang.String getChannelActionClass()
Returns:
Returns the accessClass.

setChannelActionClass

public void setChannelActionClass(java.lang.String channelActionClass)
Parameters:
channelActionClass - The channelActionClass to set.

getKey

public java.lang.String getKey()
Returns:
Returns the key.

setKey

public void setKey(java.lang.String key)
Parameters:
key - The key to set.

getLabel

public java.lang.String getLabel()
Returns:
Returns the label.

setLabel

public void setLabel(java.lang.String label)
Parameters:
label - The label to set.

setPath

public void setPath(java.lang.String path)
Parameters:
path - The path to set.

getPath

public java.lang.String getPath()
Returns:
Returns the path.

getPath

private java.lang.String getPath(java.util.Vector currentPath)
Return the path due to a current path vector

Parameters:
currentPath -
Returns:
the space current path

checkPath

public void checkPath(org.jasig.portal.security.IPerson person,
                      java.lang.String trustedAttributeName,
                      java.lang.String trustedAttributeValue)
We check if the is a {...} form in the path. If yes, we replace by the real value

Parameters:
person - the connected person
trustedAttributeName - if there is a trusted attribute, this is the name of this one
trustedAttributeValue - if there is a trusted attribute, this is the value of this one

addPathElement

public void addPathElement(java.lang.String pathElement)
Add a path element to the current directory

Parameters:
pathElement -

removePathElement

public void removePathElement(int index)
Remove an element from the current path

Parameters:
index -

getPathSize

public int getPathSize()
Return the path size

Returns:
the size

getPathElementAt

public java.lang.String getPathElementAt(int index)
Return the current element path at the good index

Parameters:
index - the selected index
Returns:
a string

canRead

public boolean canRead(ServerAccess access)
Check if we are authorized to read this space

Parameters:
access - the object used to access the server
Returns:
true if authorized else false

setServerAccessObject

public boolean setServerAccessObject()
                              throws PropertiesException,
                                     java.lang.ClassNotFoundException,
                                     java.lang.InstantiationException,
                                     java.lang.IllegalAccessException,
                                     java.net.MalformedURLException,
                                     ApplicationException
Set the server access object for this space

Returns:
true if we can access this space, else false
Throws:
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.net.MalformedURLException
ApplicationException
PropertiesException

getServerAccessObject

public ServerAccess getServerAccessObject()
Return the object used to access the server

Returns:
the object used to access the server

setServerAccessObject

public void setServerAccessObject(ServerAccess access)
Set the server access object

Parameters:
access -

setChannelActionObject

public boolean setChannelActionObject(java.util.ArrayList spaces,
                                      ChannelConfiguration config,
                                      BufferAction buffer,
                                      java.lang.String userPortalLogin,
                                      java.util.Vector userGroups)
                               throws ChannelException
Set the object used to manage the actions of the channel

Parameters:
spaces - the spaces used
config - the config class
buffer - the buffer used to get for example the clipboard
userPortalLogin - The user login in the portal
userGroups - The groups of the user in the portal
Returns:
true if well done
Throws:
ChannelException

getChannelActionObject

public AbstractChannelAction getChannelActionObject()
Get the channel action object

Returns:
the channel action object

toString

public java.lang.String toString()
Return a String representation of this space