com.jalios.jcms
Class BasicDataController

java.lang.Object
  extended by com.jalios.jcms.BasicDataController
All Implemented Interfaces:
DataController, JcmsConstants, PluginComponent, JaliosConstants, Comparable
Direct Known Subclasses:
PortletQueryForeachDataController, PublicationFollowerController, UnzipDataController

public class BasicDataController
extends Object
implements DataController, JcmsConstants, PluginComponent

This class is a neutral implementation of DataController. It is intended to be used to developp custom DataController. It avoids the sub-class to implement not used methods of DataController. It implements the Comparable interface. This interface is required since JCMS 5.5.0 ; so that DataController can be invoked in a custom order. The order can be set through the constructor. Default order is 0. When 2 BasicDataControllers are equal they are ordered according their class name, then according their hashCode.

Since:
jcms-5.0.0
Version:
$Revision: 28011 $
Author:
Olivier Dedieu

Field Summary
protected  Channel channel
           
protected  int order
           
static String REVISION
           
 
Fields inherited from interface com.jalios.jcms.DataController
CTXT_DBMEMBER_CONVERT_TO_MEMBER, CTXT_DOC_DIRECTORY, CTXT_DOC_PSTATUS_CONTROL, CTXT_DOC_UNZIP, CTXT_DOC_UPLOAD, CTXT_FORCE_DELETE, CTXT_IGNORE_DBDATA_MODIFICATION_CHECK, CTXT_IGNORE_INTEGRITY_CHECK, CTXT_IS_BATCH_OPERATION, CTXT_MAIL_FETCHER, CTXT_ORIGINAL_DATA, CTXT_PREVIOUS_DATA, CTXT_REST, CTXT_WEBDAV, CTXT_WIZARD, DO_NOT_STORE
 
Fields inherited from interface com.jalios.jcms.JcmsConstants
ADATE_SEARCH, ADMIN_NOTES_PROP, ADVANCED_TAB, ARCHIVES_DIR, ASCII_WIDTH, CATEGORY_TAB, CDATE_SEARCH, COMMON_ALARM, CONTENT_TAB, COOKIE_MAX_AGE, CRYPT_MD5, CRYPT_UNDEFINED, CRYPT_UNIX, CTRL_TOPIC_INTERNAL, CTRL_TOPIC_REF, CTRL_TOPIC_VALUE, CTRL_TOPIC_WRITE, CUSTOM_PROP, DOCCHOOSER_HEIGHT, DOCCHOOSER_WIDTH, DOCS_DIR, EDATE_SEARCH, EMAIL_REGEXP, ERROR_MSG, FORBIDDEN_FILE_ACCESS, FORBIDDEN_REDIRECT, FORCE_REDIRECT, ICON_ARCHIVE, ICON_LOCK, ICON_LOCK_STRONG, ICON_WARN, ICON_WH_BOOK_CLOSED, ICON_WH_BOOK_OPEN, INFORMATION_MSG, JALIOS_JUNIT_PROP, JCMS_CADDY, JCMS_MSG_LIST, JSYNC_DOWNLOAD_DIR, JSYNC_SYNC_ALARM, LOG_FILE, LOG_TOPIC_SECURITY, LOGGER_PROP, LOGGER_XMLPROP, MBR_PHOTO_DIR, MDATE_SEARCH, MONITOR_XML, OP_CREATE, OP_DEEP_COPY, OP_DEEP_DELETE, OP_DELETE, OP_MERGE, OP_UPDATE, PDATE_SEARCH, PHOTO_DIR, PHOTO_ICON, PHOTO_ICON_HEIGHT, PHOTO_ICON_WIDTH, PHOTO_LARGE, PHOTO_LARGE_HEIGHT, PHOTO_LARGE_WIDTH, PHOTO_NORMAL, PHOTO_NORMAL_HEIGHT, PHOTO_NORMAL_WIDTH, PHOTO_SMALL, PHOTO_SMALL_HEIGHT, PHOTO_SMALL_WIDTH, PHOTO_TINY, PHOTO_TINY_HEIGHT, PHOTO_TINY_WIDTH, PREVIOUS_TAB, PRINT_VIEW, PRIVATE_FILE_ACCESS, PUBLIC_FILE_ACCESS, READ_RIGHT_TAB, SDATE_SEARCH, SEARCHENGINE_ALARM, SESSION_AUTHORIZED_FILENAMES_SET, STATS_REPORT_DIR, STATUS_PROP, STORE_XML, TEMPLATE_TAB, THUMBNAIL_LARGE_HEIGHT, THUMBNAIL_LARGE_WIDTH, THUMBNAIL_SMALL_HEIGHT, THUMBNAIL_SMALL_WIDTH, UDATE_SEARCH, UPDATE_RIGHT_TAB, UPLOAD_DIR, URL_REGEXP, WARNING_MSG, WEBAPP_PROP, WFEXPRESS_ALARM, WFREMINDER_ALARM, WORKFLOW_TAB, WORKFLOW_XML
 
Fields inherited from interface com.jalios.util.JaliosConstants
CRLF, MILLIS_IN_ONE_DAY, MILLIS_IN_ONE_HOUR, MILLIS_IN_ONE_MINUTE, MILLIS_IN_ONE_MONTH, MILLIS_IN_ONE_SECOND, MILLIS_IN_ONE_WEEK, MILLIS_IN_ONE_YEAR
 
Constructor Summary
BasicDataController()
          Constructs a BasicDataController with order = 0
BasicDataController(int order)
          Constructs a BasicDataController with the given order
 
Method Summary
 void afterWrite(Data data, int op, Member mbr, Map context)
          This method is called once the write operation has been performed.
 void beforeWrite(Data data, int op, Member mbr, Map context)
          This method is called before the write operation is performed.
protected  ControllerStatus checkFieldMLRequired(Publication pub, String fieldName, String value, HashMap valueML)
          This convenient method checks if the given multilingual field is required.
protected  ControllerStatus checkFieldRequired(Publication pub, String fieldName, String value)
          This convenient method checks if the given field is required.
 ControllerStatus checkIntegrity(Data data)
          Checks if the given data respects constraints integrity
 ControllerStatus checkWrite(Data data, int op, Member mbr, boolean checkIntegrity, Map context)
          Checks if the given write operation can be performed
 int compareTo(Object obj)
          Compare this object with the specified object for order.
 boolean equals(Object obj)
          Indicates wheter some other object is "equal to" this one.
 boolean init(Plugin plugin)
          Initialize the component with the given plugin configuration
 void processFieldStatusMap(Data data, Member mbr, Map<String,FieldStatus> map)
          This method is called to fill the map of FieldStatus for the given data.
protected  void updateFieldStatusMap(Map<String,FieldStatus> map, String fieldName, FieldStatus status)
          This convient methods update a FieldStatus map with the given status
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

REVISION

public static final String REVISION
See Also:
Constant Field Values

order

protected int order

channel

protected Channel channel
Constructor Detail

BasicDataController

public BasicDataController()
Constructs a BasicDataController with order = 0

Since:
jcms-5.0.0

BasicDataController

public BasicDataController(int order)
Constructs a BasicDataController with the given order

Parameters:
order - the order
Since:
jcms-5.5.0
Method Detail

init

public boolean init(Plugin plugin)
Description copied from interface: PluginComponent
Initialize the component with the given plugin configuration

Specified by:
init in interface PluginComponent
Parameters:
plugin - the calling plugin
Returns:
true if the component has been correctly initialized.
Since:
jcms-5.7.1
See Also:
PluginComponent.init(Plugin)

checkIntegrity

public ControllerStatus checkIntegrity(Data data)
Checks if the given data respects constraints integrity

Specified by:
checkIntegrity in interface DataController
Parameters:
data - the data to be checked
Returns:
a ControllerStatus
Since:
jcms-5.0.0

checkWrite

public ControllerStatus checkWrite(Data data,
                                   int op,
                                   Member mbr,
                                   boolean checkIntegrity,
                                   Map context)
Checks if the given write operation can be performed

Specified by:
checkWrite in interface DataController
Parameters:
data - the data involved by this operation
op - the operation (OP_CREATE, OP_UPDATE, ...)
mbr - the member which requests the write operation
checkIntegrity - if true, requires the constraints integrity to be checked
context - a map which contains context parameters (may be null)
Returns:
a ControllerStatus
Since:
jcms-5.0.0

processFieldStatusMap

public void processFieldStatusMap(Data data,
                                  Member mbr,
                                  Map<String,FieldStatus> map)
This method is called to fill the map of FieldStatus for the given data. The key of the map in the name of the field.

Specified by:
processFieldStatusMap in interface DataController
Parameters:
data - the data
mbr - the member which requests the data
map - the map of FieldStatus
Since:
jcms-6.0.1

beforeWrite

public void beforeWrite(Data data,
                        int op,
                        Member mbr,
                        Map context)
This method is called before the write operation is performed.

Specified by:
beforeWrite in interface DataController
Parameters:
data - the data which will be written
op - the operation (OP_CREATE, OP_UPDATE, ...)
mbr - the member which requests the write operation
context - a map which contains context parameters (may be null)
Since:
jcms-5.0.0

afterWrite

public void afterWrite(Data data,
                       int op,
                       Member mbr,
                       Map context)
This method is called once the write operation has been performed.

Specified by:
afterWrite in interface DataController
Parameters:
data - the data which will be written
op - the operation (OP_CREATE, OP_UPDATE, ...)
mbr - the member which requests the write operation
context - a map which contains context parameters (may be null)
Since:
jcms-5.0.0

compareTo

public int compareTo(Object obj)
Compare this object with the specified object for order.

Specified by:
compareTo in interface Comparable
Parameters:
obj - the Object to be compared.
See Also:
Comparable.compareTo(java.lang.Object)

equals

public boolean equals(Object obj)
Indicates wheter some other object is "equal to" this one. The comparison is performed with compareTo() method.

Overrides:
equals in class Object
Parameters:
obj - the Object to be compared.

checkFieldMLRequired

protected ControllerStatus checkFieldMLRequired(Publication pub,
                                                String fieldName,
                                                String value,
                                                HashMap valueML)
This convenient method checks if the given multilingual field is required.

Parameters:
pub - the publication
fieldName - the name of the field
value - the value of the field
valueML - the ML value of the field
Returns:
a ControllerStatus
Since:
jcms-6.0.1

checkFieldRequired

protected ControllerStatus checkFieldRequired(Publication pub,
                                              String fieldName,
                                              String value)
This convenient method checks if the given field is required.

Parameters:
pub - the publication
fieldName - the name of the field
value - the value of the field
Returns:
a ControllerStatus
Since:
jcms-6.0.1

updateFieldStatusMap

protected void updateFieldStatusMap(Map<String,FieldStatus> map,
                                    String fieldName,
                                    FieldStatus status)
This convient methods update a FieldStatus map with the given status

Parameters:
map - the FieldStatus map
fieldName - the name of the field (i.e. the key of the map)
status - the FieldStatus to be added
Since:
jcms-6.0.1


Copyright © 2001-2010 Jalios SA. All Rights Reserved.