com.jscape.inet.vfs
Class Account

java.lang.Object
  extended by com.jscape.inet.vfs.Account

public final class Account
extends java.lang.Object

Represents user account abstraction. The account is a named block of user available files. It also contains basic user information.

Version:
1.0
Author:
Alex Usun

Nested Class Summary
static class Account.Delegate
           
 
Constructor Summary
Account(Account that)
          Copy constructor.
Account(java.lang.String username, java.lang.String login, byte[] passwordHash, VirtualFileDescriptor[] resources, java.util.Date expirationDate)
          Creates a new account instance.
Account(java.lang.String username, java.lang.String login, char[] password, VirtualFileDescriptor[] resources, java.util.Date expirationDate)
          Creates a new account instance.
 
Method Summary
 boolean accepts(char[] password)
          Checks if the specified password is valid for this account.
 boolean equals(java.lang.Object o)
           
 DomainAdministration getAdministration()
          Gets domain administration parameters for account.
 java.lang.String[] getBindedKeys()
          Returns account binded public keys.
 Quota getDownloadsQuota()
          Gets maximum downloads quota.
 java.lang.String getEmailAddress()
          Returns account email address.
 java.util.Date getExpirationDate()
          Returns the account expiration date.
 java.lang.String getGroupName()
          Returns the account group name.
 java.lang.String getLogin()
          Returns the user login.
 java.util.Map getOptions()
          Returns custom options.
 java.lang.String getOwner()
          Gets username of owner account.
 boolean getPasswordChangingAllowed()
          Returns password change allowed flag.
 java.util.Date getPasswordDate()
          Gets password expiration date.
 byte[] getPasswordHash()
          Returns account password hash.
 java.util.List getPasswordHistory()
          Gets password history.
 VirtualFileDescriptor[] getResources()
          Gets the account virtual paths array.
 Quota getTransfersQuota()
          Gets maximum transfers quota.
 Quota getUploadsQuota()
          Gets maximum uploads quota.
 java.lang.String getUsername()
          Returns the user name.
 int hashCode()
           
 boolean isEmailFileTransferAllowed()
          Returns email file transfer allowed flag.
 boolean isEnabled()
          Checks if the account is enabled.
 boolean isExpired()
          Checks if this account is expired.
 boolean isSecured()
          Checks if the account must login using secure protocol.
 boolean isUsedPassword(char[] password, int verifiedHistoryLength)
          Checks if password has been used previously.
 void setAdministration(DomainAdministration value)
          Sets domain administration parameters for account.
 void setBindedKeys(java.lang.String[] value)
          Sets account binded public keys.
 void setDownloadsQuota(Quota value)
          Sets maximum downloads quota.
 void setEmailAddress(java.lang.String value)
          Sets new account email address.
 void setEmailFileTransferAllowed(boolean value)
          Sets email file transfer allowed flag.
 void setEnabled(boolean value)
          Sets account enabling indicator.
 void setExpirationDate(java.util.Date value)
          Sets the expiration date.
 void setGroupName(java.lang.String value)
          Sets a new group for the account.
 void setOptions(java.util.Map value)
          Sets custom options.
 void setOwner(java.lang.String value)
          Sets username of owner account.
 void setPassword(char[] value)
          Sets a new account password.
 void setPasswordChangingAllowed(boolean value)
          Sets password changing allowed flag.
 void setPasswordDate(java.util.Date value)
          Sets password expiration date.
 void setPasswordHash(byte[] value)
          Sets the account password hash
 void setPasswordHistory(java.util.List value)
          Sets password history.
 void setResources(VirtualFileDescriptor[] value)
          Sets the account virtual paths.
 void setSecured(boolean value)
          Sets whether user must login using secure protocol.
 void setTransfersQuota(Quota value)
          Sets maximum transfers quota.
 void setUploadsQuota(Quota value)
          Sets maximum uploads quota.
 void setUsername(java.lang.String value)
          Sets the user name.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Account

public Account(java.lang.String username,
               java.lang.String login,
               char[] password,
               VirtualFileDescriptor[] resources,
               java.util.Date expirationDate)
Creates a new account instance.

Parameters:
username - the user name
login - the user login
password - the user password
resources - the virtual paths associated with this user
expirationDate - the expiration date

Account

public Account(java.lang.String username,
               java.lang.String login,
               byte[] passwordHash,
               VirtualFileDescriptor[] resources,
               java.util.Date expirationDate)
Creates a new account instance.

Parameters:
username - the user name
login - the user login
passwordHash - the user password hash
resources - the virtual paths associated with this user
expirationDate - the expiration date

Account

public Account(Account that)
Copy constructor.

Parameters:
that - instance will be copied
Method Detail

getUsername

public java.lang.String getUsername()
Returns the user name.

Returns:
the user name

setUsername

public void setUsername(java.lang.String value)
Sets the user name.

Parameters:
value - the user name

getLogin

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

Returns:
the user login

getPasswordHash

public byte[] getPasswordHash()
Returns account password hash.

Returns:
the account password hash

setPasswordHash

public void setPasswordHash(byte[] value)
Sets the account password hash

Parameters:
value - The account password hash will be set

setPassword

public void setPassword(char[] value)
Sets a new account password.

Parameters:
value - The new account password

isUsedPassword

public boolean isUsedPassword(char[] password,
                              int verifiedHistoryLength)
Checks if password has been used previously.

Parameters:
password - the password to check
verifiedHistoryLength - the history length to check
Returns:
true if password previously used, false otherwise

accepts

public boolean accepts(char[] password)
Checks if the specified password is valid for this account.

Parameters:
password - the password to check
Returns:
true if the specified password is valid; false otherwise

getResources

public VirtualFileDescriptor[] getResources()
Gets the account virtual paths array.

Returns:
Returns the user virtual paths

setResources

public void setResources(VirtualFileDescriptor[] value)
Sets the account virtual paths.

Parameters:
value - the new user virtual paths array

getExpirationDate

public java.util.Date getExpirationDate()
Returns the account expiration date.

Returns:
exiration date

setExpirationDate

public void setExpirationDate(java.util.Date value)
Sets the expiration date.

Parameters:
value - the new expiration date

isExpired

public boolean isExpired()
Checks if this account is expired.

Returns:
true if account is expired; false otherwise

isSecured

public boolean isSecured()
Checks if the account must login using secure protocol.

Returns:
true if the account has secured access; false otherwise

setSecured

public void setSecured(boolean value)
Sets whether user must login using secure protocol.

Parameters:
value - if true the account will have only secured access

isEnabled

public boolean isEnabled()
Checks if the account is enabled.

Returns:
true if the account is enabled; false otherwise

setEnabled

public void setEnabled(boolean value)
Sets account enabling indicator.

Parameters:
value - if true the account will be enabled

getGroupName

public java.lang.String getGroupName()
Returns the account group name.

Returns:
the group name which current account belongs to or null if account doesn't belong to any group

setGroupName

public void setGroupName(java.lang.String value)
Sets a new group for the account.

Parameters:
value - the group name

getPasswordChangingAllowed

public boolean getPasswordChangingAllowed()
Returns password change allowed flag. Used for FTP/SFTP password changing.

Returns:
true if password changing is allowed; false otherwise

setPasswordChangingAllowed

public void setPasswordChangingAllowed(boolean value)
Sets password changing allowed flag.

Parameters:
value - if true password changing is allowed

getBindedKeys

public java.lang.String[] getBindedKeys()
Returns account binded public keys.

Returns:
account binded keys aliases

setBindedKeys

public void setBindedKeys(java.lang.String[] value)
Sets account binded public keys.

Parameters:
value - account binded keys aliases

isEmailFileTransferAllowed

public boolean isEmailFileTransferAllowed()
Returns email file transfer allowed flag.

Returns:
true if email file transfer is allowed; false otherwise

setEmailFileTransferAllowed

public void setEmailFileTransferAllowed(boolean value)
Sets email file transfer allowed flag.

Parameters:
value - if true email file transfer is allowed

getEmailAddress

public java.lang.String getEmailAddress()
Returns account email address.

Returns:
account email address

setEmailAddress

public void setEmailAddress(java.lang.String value)
Sets new account email address.

Parameters:
value - account email address

getUploadsQuota

public Quota getUploadsQuota()
Gets maximum uploads quota.

Returns:
uploads quota

setUploadsQuota

public void setUploadsQuota(Quota value)
Sets maximum uploads quota.

Parameters:
value - uploads quota

getDownloadsQuota

public Quota getDownloadsQuota()
Gets maximum downloads quota.

Returns:
downloads quota

setDownloadsQuota

public void setDownloadsQuota(Quota value)
Sets maximum downloads quota.

Parameters:
value - downloads quota

getTransfersQuota

public Quota getTransfersQuota()
Gets maximum transfers quota.

Returns:
transfers quota

setTransfersQuota

public void setTransfersQuota(Quota value)
Sets maximum transfers quota.

Parameters:
value - transfers quota

getPasswordDate

public java.util.Date getPasswordDate()
Gets password expiration date.

Returns:
password expiration date

setPasswordDate

public void setPasswordDate(java.util.Date value)
Sets password expiration date.

Parameters:
value - password expiration date

getPasswordHistory

public java.util.List getPasswordHistory()
Gets password history.

Returns:
password history

setPasswordHistory

public void setPasswordHistory(java.util.List value)
Sets password history.

Parameters:
value - password history

getOptions

public java.util.Map getOptions()
Returns custom options.

Returns:
custom options

setOptions

public void setOptions(java.util.Map value)
Sets custom options.

Parameters:
value - custom options

getOwner

public java.lang.String getOwner()
Gets username of owner account.

Returns:
owner login

setOwner

public void setOwner(java.lang.String value)
Sets username of owner account.

Parameters:
value - owner login

getAdministration

public DomainAdministration getAdministration()
Gets domain administration parameters for account.

Returns:
domain administration params

setAdministration

public void setAdministration(DomainAdministration value)
Sets domain administration parameters for account.

Parameters:
value - domain administration params

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2007 JSCAPE Corp. All Rights Reserved.