2.17.2: 2011-06-17

net.sf.basedb.core
Class ClientDefaultSetting

java.lang.Object
  extended by net.sf.basedb.core.BasicItem<D>
      extended by net.sf.basedb.core.Setting<ClientDefaultSettingData>
          extended by net.sf.basedb.core.ClientDefaultSetting
All Implemented Interfaces:
AccessControlled, Identifiable

public class ClientDefaultSetting
extends Setting<ClientDefaultSettingData>

This class is used to represent a setting for specific client application.

Version:
2.0
Author:
Nicklas

Field Summary
private static QueryRuntimeFilter RUNTIME_FILTER
          This filter will only return items if the logged in user has generic read permission to clients.
static Item TYPE
          The type of item represented by this class.
 
Fields inherited from class net.sf.basedb.core.Setting
MAX_NAME_LENGTH, MAX_VALUE_LENGTH
 
Constructor Summary
ClientDefaultSetting(ClientDefaultSettingData data)
           
 
Method Summary
static ClientDefaultSetting getById(DbControl dc, int id)
          Get a ClientDefaultSetting item when you know the ID.
 Client getClient()
          Get the client application this setting is valid for.
static ClientDefaultSetting getNew(DbControl dc, Client client, String name, String value)
          Create a new ClientDefaultSetting item.
static ItemQuery<ClientDefaultSetting> getQuery(Client client)
          Get a query object configured to retrieve default settings for the specified client application.
 Item getType()
          Get the type of item represented by the object.
(package private)  void initPermissions(int granted, int denied)
          READ permission is granted if the logged in user has READ permission to the client application.
(package private)  void setClient(Client client)
          Set the client application this setting is valid for.
 
Methods inherited from class net.sf.basedb.core.Setting
getName, getValue, setName, setValue
 
Methods inherited from class net.sf.basedb.core.BasicItem
addUsingItems, addUsingItems, checkPermission, equals, getData, getDbControl, getId, getPermissions, getPluginPermissions, getSessionControl, getUsingItems, getVersion, hashCode, hasPermission, isDetached, isInDatabase, isUsed, onAfterCommit, onAfterInsert, onBeforeCommit, onRollback, setDbControl, setProjectDefaults, toString, toTransferable, validate
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPE

public static final Item TYPE
The type of item represented by this class.

See Also:
Item.CLIENTDEFAULTSETTING, getType()

RUNTIME_FILTER

private static final QueryRuntimeFilter RUNTIME_FILTER
This filter will only return items if the logged in user has generic read permission to clients.

Constructor Detail

ClientDefaultSetting

ClientDefaultSetting(ClientDefaultSettingData data)
Method Detail

getNew

public static ClientDefaultSetting getNew(DbControl dc,
                                          Client client,
                                          String name,
                                          String value)
                                   throws BaseException
Create a new ClientDefaultSetting item.

Parameters:
dc - The DbControl which will be used for permission checking and database access
client - The Client which this should be a default setting for
name - The name of the setting
value - The value of the setting
Returns:
The new ClientDefaultSetting item
Throws:
BaseException - If there is an error
See Also:
Client.newDefaultSetting(String,String)

getById

public static ClientDefaultSetting getById(DbControl dc,
                                           int id)
                                    throws ItemNotFoundException,
                                           PermissionDeniedException,
                                           BaseException
Get a ClientDefaultSetting item when you know the ID.

Parameters:
dc - The DbControl which will be used for permission checking and database access.
id - The ID of the item to load
Returns:
The ClientDefaultSetting item
Throws:
ItemNotFoundException - If an item with the specified ID is not found
PermissionDeniedException - If the logged in user doesn't have Permission.READ permission to the item
BaseException - If there is another error

getQuery

public static ItemQuery<ClientDefaultSetting> getQuery(Client client)
Get a query object configured to retrieve default settings for the specified client application.

Parameters:
client - The client to retreive settings for, null is allowed if the logged in user has generic READ permission for clients in which case all settings will be returned
Returns:
An ItemQuery object
See Also:
Client.getDefaultSettings()

getType

public Item getType()
Description copied from interface: Identifiable
Get the type of item represented by the object. The returned value is one of the values defined in the Item enumeration.

Returns:
A value indicating the type of item

initPermissions

void initPermissions(int granted,
                     int denied)
               throws BaseException
READ permission is granted if the logged in user has READ permission to the client application. WRITE, DELETE and CREATE permissions are granted if the logged in user have WRITE permission to the client application of this setting.

Overrides:
initPermissions in class Setting<ClientDefaultSettingData>
Parameters:
granted - Permissions that have been granted by the subclass
denied - Permissions that have been denied by the subclass
Throws:
BaseException - If the permissions couldn't be initialised

getClient

public Client getClient()
                 throws PermissionDeniedException,
                        BaseException
Get the client application this setting is valid for.

Returns:
The Client item
Throws:
PermissionDeniedException - If the logged in user doesn't have Permission.READ permission
BaseException - If there is another error

setClient

void setClient(Client client)
         throws PermissionDeniedException,
                InvalidDataException
Set the client application this setting is valid for. Can only be set on a new item.

Throws:
InvalidDataException - If the client is null
PermissionDeniedException

2.17.2: 2011-06-17