|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.jalios.jcms.JcmsUtil
public class JcmsUtil
This class contains a set of utility static methods.
Field Summary | |
---|---|
static org.apache.oro.text.regex.Pattern |
DUPLICATE_PREFIX
|
static String |
REVISION
|
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 | |
---|---|
JcmsUtil()
|
Method Summary | ||
---|---|---|
static void |
addData(TreeSet set,
Class clazz,
Collection coll)
This methods adds data from a collection to the given set if the data is an instance of the given class. |
|
static void |
addData(TreeSet set,
Class clazz,
Data data)
This methods adds the given data to the given set if this data is an instance of the given class. |
|
static void |
addData(TreeSet set,
Class clazz,
Data[] array)
This methods adds data from an array to the given set if the data is an instance of the given class. |
|
static void |
addData(TreeSet set,
Class clazz,
Map mlMap)
This methods adds data from a ML Map to the given set if the data is an instance of the given class. |
|
static void |
addFileDocument(Set<FileDocument> set,
Collection<String> filenameColl)
Adds the FileDocuments bound to the given filename collection in the given set. |
|
static void |
addFileDocument(Set<FileDocument> set,
String... filenames)
Adds the FileDocuments bound to the given filename array in the given set. |
|
static void |
addFileDocument(Set<FileDocument> set,
String filename)
Adds the FileDocument bound to the given filename in the given set. |
|
static void |
addFileDocument(Set<FileDocument> set,
String[] filenamesMainLanguage,
Map<String,String[]> mlMap)
Adds the FileDocuments bound to the given array of filename and to the array of filename contains as value of mlMap in the given set. |
|
static void |
addFileDocument(Set<FileDocument> set,
String filenameMainLanguage,
Map<String,String> mlMap)
Adds the FileDocuments bound to the given filename and to the filename contains as value of mlMap in the given set. |
|
static Collection |
applyDataSelector(Collection dataColl,
DataSelector selector)
Apply given DataSelector by removing non selected Data
from the given Collection . |
|
static boolean |
checkDataWriteDisabled(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
String redirect,
String userLang)
Check is data writes are disabled. |
|
static ControllerStatus |
checkFieldMLRequired(Publication pub,
String fieldName,
String value,
HashMap valueML)
This convenient method checks if the given multilingual field is required. |
|
static ControllerStatus |
checkFieldRequired(Publication pub,
String fieldName,
Object value)
This convenient method checks if the given field is required. |
|
static ControllerStatus |
checkHtml(Map map,
String field)
Check if the values of given map of String do not contain forbidden HTML code |
|
static ControllerStatus |
checkHtml(String[] array,
String field)
Check if the given array of String does not contain forbidden HTML code |
|
static ControllerStatus |
checkHtml(String str,
String field)
Check if the given String does not contain forbidden HTML code. |
|
static void |
checkJDBCConnection(String driver,
String url,
String user,
String password)
Check if the given JDBC connection can be established. |
|
static boolean |
checkUrid(String urid)
Returns true if the given urid is valid. |
|
static String |
convertMultilingualFieldToXml(String mainValue,
Map<String,String> valuesMap)
Convert a multilingual field to an xml representation. |
|
static org.jdom.Element |
convertMultilingualFieldToXmlElement(String mainValue,
Map<String,String> valuesMap)
Convert a multilingual field to an xml representation. |
|
static Map<String,String> |
convertMultilingualFieldXmlToMap(String xml)
Converts an xml string to an hashmap of values. |
|
static String |
convertToCSV(String lang,
boolean bool)
Returns a CSV view of the given boolean value |
|
static String |
convertToCSV(String lang,
Object obj)
Returns a CSV view of the given object in the given language. |
|
static String |
convertToCSV(String lang,
Object obj,
boolean displayObjectId)
Returns a CSV view of the given object in the specified language. |
|
static String |
convertUri2Url(String text,
String baseURL)
Convert all relative URI in the given text to complete URL with the given base URL. |
|
static Set<String> |
dataArrayToIdSet(Data[] datas)
Convert a Data[] to a Set<String> composed by id |
|
static String[] |
dataArrayToNameArray(Data[] datas,
String lang)
Convert a Data[] to a String[] composed of their name (label, title, name, ...) |
|
static String[] |
dataArrayToStringArray(Data[] datas)
Convert a Data[] to a String[] composed by id |
|
static
|
dataCollectionToIdList(Collection<T> dataColl)
Returns the list of ids contained in the given collection of data. |
|
static
|
dataCollectionToIdSet(Collection<T> dataColl)
Returns the set of ids contained in the given collection of data. |
|
static
|
dataListToString(Collection<T> list,
String delim)
Convert a Collection of Data into a String composed by id, separated by the specified delimiter. |
|
static String |
dateSetToString(SortedSet<Date> dateSet)
Create a new List of String time in millis from a SortedSet of Date. |
|
static String |
escapeHtml(String str)
Replace "<" and "&" with their corresponding HTML entities (< and &) in the specified String. |
|
static Map |
expandArray(Map mlMap,
Map main)
This method will expand each String[] keys of a given map to a given length. |
|
static String[] |
expandArray(String[] array,
String[] main)
This method will expand each String[] keys of a given map to a given length. |
|
static void |
exportCSV(Set<? extends Data> dataSet,
String lang,
Writer writer)
Export a dataSet to CSV |
|
static void |
exportCSVIntegrityReport(Map<Data,ControllerStatus> report,
String lang,
Writer writer)
Export a Data Integrity Report to CSV |
|
static void |
exportCSVIntegrityReport(String lang,
Writer writer)
Export a Data Integrity Report to CSV |
|
static Set |
extractExternalUrl(String text)
Returns all the external URL contained in the given text. |
|
static
|
fillIdCollectionWithDataCollection(Collection<String> idColl,
Class<T> clazz,
Collection<T> dataColl)
|
|
static String |
formatSchedule(String userLang,
String schedule)
Format a cron-like schedule. |
|
static String |
getAbsDisplayUrlWithUpdatedParams(Data data,
Locale locale,
javax.servlet.http.HttpServletRequest request,
String[] names,
String[] newValues,
String[] removePatterns,
boolean escapeAmpersand)
Return the absolute URL to access the given data in the front office, while updating/adding or removing a set of parameters. |
|
static Class |
getClass(String className,
Class defClass)
Quietly returns the Class matching the given className or defClass if it doesn't exists. |
|
static List<Class<?>> |
getClassList()
Returns the list of the Jalios classes |
|
static List<Class<?>> |
getClassList(String libDir,
ClassLoader classLoader)
Returns the list of the Jalios classes |
|
static String |
getDisplayUrl()
Return the display url of JCMS. |
|
static String |
getDisplayUrl(Data data,
Locale locale)
Return the URL to access the given data in the front office. |
|
static String |
getDisplayUrl(Data data,
Locale locale,
String params,
boolean escapeAmpersand)
Return the URL to access the given data in the front office with the added given param string. |
|
static String |
getDisplayUrlWithAddedParam(Data data,
Locale locale,
javax.servlet.http.HttpServletRequest request,
String name,
String value,
boolean escapeAmpersand)
Return the URL to access the given data in the front office, while adding the given parameter. |
|
static String |
getDisplayUrlWithUpdatedParams(Data data,
Locale locale,
javax.servlet.http.HttpServletRequest request,
String[] names,
String[] newValues,
String[] removePatterns,
boolean escapeAmpersand)
Return the URL to access the given data in the front office, while updating/adding or removing a set of parameters. |
|
static String |
getEscapedEmailName(String value)
Remove from a value characters which should not be in email headers (like : or ,) |
|
static String |
getFieldLangAttributes(Data data,
String fieldName,
String userLang)
Compute the real language used for the given field and retrieve the html language attributes to use for the this language. |
|
static ObjectLongTreeMap |
getFileSizeMap()
Deprecated. since jcms-7.1.0, use Channel.getGlobalFileAnalyzer method to have more information about satellites files |
|
static ObjectLongTreeMap |
getFileSizeMap(Workspace ws)
Deprecated. since jcms-7.1.0, use Workspace.getFileAnalyzer method to have more information about satellites files |
|
static String |
getFriendlyDate(Date date,
int style,
boolean showTime,
Locale locale)
Returns a friendly textual representation for the given date (e.g. |
|
static String |
getFriendlyDate(Date date,
int style,
boolean showTime,
Locale locale,
boolean beginSentence)
Returns a friendly textual representation for the given date (e.g. |
|
static String |
getFriendlyPeriod(Date startDate,
Date endDate,
Locale locale)
Returns a friendly textual representation of a time period defined by two dates. |
|
static String |
getId(Data data)
This convenient method return the id of the given data. |
|
static FileFilter |
getIgnoredResourcesFileFiler()
Retrieves a new instance of FileFilter used to skip resources that should be ignored, as defined by property "file.regexp.ignore" . |
|
static FileFilter |
getIgnoredResourcesFileFiler(boolean accept)
Retrieves a new instance of FileFilter to either refuse or accept resources that should be ignored, as defined by property "file.regexp.ignore" . |
|
static String |
getIgnoreFileRegexp()
|
|
static String |
getIgnoreSignRegexp()
|
|
static String |
getLangAttributes(String lang)
Retrieve the html language attributes to use for the given language. |
|
static Map<String,String> |
getLangChildrenMap(org.jdom.Element elt,
String childName,
String info)
Returns the map of the children of elt with their xml:lang as key. |
|
static String[] |
getLanguageArray(Map map)
Returns a String[] which contains all the values of the given map. |
|
static Map<String,String> |
getLanguageMap(String propKey)
Returns a map {lang, value} build from the given property key. |
|
static Map<String,String> |
getLanguageMap(String[] values)
Returns a map {lang, value} with the given localized values. |
|
static Map<String,String> |
getLanguageMap(String[] values,
boolean escapeHtml)
Returns a map {lang, value} with the given localized values. |
|
static List |
getLanguageMapList(String[] values)
Returns a list of map {lang, value} with the given localized values. |
|
static String |
getLangValue(Map map,
String lang)
Returns the localized value mapped to the given language. |
|
static Set<Member> |
getMemberSetFromGroups(String[] gids)
Return all the members represented by an Array of Group ids |
|
static String |
getNewDirectory(File baseDir,
String subDir)
Returns the relative path of directory to use for the new document to be created. |
|
static String |
getPrefixedTitle(String prefix,
String title,
boolean replaceOnly)
Contruct a String with prefix + title or replace a $NAME$ by this prefix |
|
static String |
getPubIcon(Publication pub)
Returns the HTML code for the icon of the given publication |
|
static String |
getPubImg(Publication pub)
Returns the image of the icon of the given publication |
|
static int[] |
getPublicationDetails(Class clazz,
Member mbr,
Workspace ws)
Returns some statistics about a given publication type. |
|
static String |
getReleasedRevision(Class clazz)
Returns the value of static variable REVISION when it was packaged for this release. |
|
static String |
getRevision(Class clazz)
Returns the value of static variable REVISION of the given class. |
|
static Date[] |
getScheduleDate(Date reference,
Date targetDate,
Date[] toUpdate,
long schedule,
boolean forward)
Calculate loops to do between reference date and target date then apply loops on all toUpdate Dates. |
|
static Date |
getScheduleDate(Date reference,
Date targetDate,
long schedule,
boolean forward)
Return the next schedule date after/before now (if reference date is before/after now) If Reference 04/05/1977 and targetDate 04/08/1977 and schedule is 2 Month the method will forward to 04/09/1977. |
|
static Date |
getScheduleDate(Date reference,
long schedule,
boolean forward)
Return the next schedule date after/before reference date. |
|
static int[] |
getScheduleModifier(long schedule,
boolean forward)
Parse schedule to return an array of modifiers for calendar roll with the given values: modifiers[0] month modifiers[1] weeks modifiers[2] days modifiers[3] hours modifiers[4] minutes modifiers[5] seconds modifiers[6] millis |
|
static TreeSet |
getSortedClass(Collection subTypeList,
Workspace workspace,
String userLang)
Return a Set of classes of Types sorted alphabetically according to the title. |
|
static String |
getUntranslatedZoneAttribute(String lang)
Retrieve the HTML attributes to use for any HTML element surrounding feature/s which are not translated in the current user language (eg : ctx menu, glp, ...) : When the current user language is not a JCMS localization (eg: "es", "ar", ...), this variable will set the proper language and directionnality (eg lang="en" dir="ltr"), When the current user language is a valid JCMS localization (eg : "en", "fr"), this variable is an empty string.the html language attributes to use for the given language. |
|
static TreeSet |
getUpdatedData(Collection old,
Map dataMap)
Convert an old set of Data to a new Set of data using a Map |
|
static TreeSet |
getUpdatedData(Collection old,
Map dataMap,
boolean retrieveAll)
Convert an old set of Data to a new Set of data using a Map |
|
static Data[] |
getUpdatedData(Data[] old,
Map dataMap)
Convert an old array of Data to a new array of data using a Map |
|
static String |
getVirtualId(String virtualId,
String id)
Retrieves the virtual id corresponding to the specified data id. |
|
static String |
getVirtualIdList(String stringWithPossiblyVirtualIds,
String stringOfRealIds)
Convenient method to keep virtual id when set. |
|
static String |
getWebappClasspath()
Return the Classpath of the webapp |
|
static String |
getWebHelpHome(javax.servlet.http.HttpServletRequest request)
Returns the webhelp URI of the user's guide home page. |
|
static String |
getWebHelpUri(javax.servlet.http.HttpServletRequest request,
String entry)
Returns the webhelp URI of the given entry. |
|
static String[] |
getWebHelpUriAndIcon(javax.servlet.http.HttpServletRequest request,
String entry,
boolean home)
Returns a String[] which contains the webhelp URI and the webhelp icon. |
|
static int |
getWorkerCount()
Returns the count of members having the worker ability. |
|
static String |
getXHtmlMetaHttpEquivTag(String httpEquiv,
String content)
Generates an XHtml meta http-equiv tag (i.e. |
|
static String |
getXHtmlMetaTag(String name,
String content)
Generates an XHtml meta tag (i.e. |
|
static String |
getXHtmlMetaTag(String keyName,
String key,
String content)
Generates a generic XHtml meta tag (key name is configurable). |
|
static String |
glp(String lang,
LangProperty prop)
Resolve a language property in the given language. |
|
static String |
glp(String lang,
String prop,
Object... params)
Resolve a language property in the given language. |
|
static String |
glpd(String prop)
Resolve a language property in the default site language. Warning: You should always prefer the use of 'glp' methods receiving a language parameter in order to resolve the property in the language of the end user. |
|
static
|
idCollectionToDataArray(Collection<String> idColl,
Class<T> clazz)
|
|
static
|
idCollectionToDataHashSet(Collection<String> idColl,
Class<T> clazz)
Returns a HashSet of Data from a Collection of data's id. |
|
static
|
idCollectionToDataLinkedHashSet(Collection<String> idColl,
Class<T> clazz)
Returns a LinkedHashSet of Data from a Collection of data's id. |
|
static
|
idCollectionToDataList(Collection<String> idColl,
Class<T> clazz)
Returns a List of Data from a Collection of data's id. |
|
static
|
idCollectionToDataSet(Collection<String> idColl,
Class<T> clazz)
Returns a Set of Data from a Collection of data's id. |
|
static
|
idCollectionToDataTreeSet(Collection<String> idColl,
Class<T> clazz)
Returns a TreeSet of Data from a Collection of data's id. |
|
static boolean |
isAuthorizedToAccessStatusInfo(javax.servlet.ServletContext context,
javax.servlet.http.HttpServletRequest request)
Check if the given request is allowed to access jcms status page, (admin/admin.jsp, admin/statusXml.jsp). This method can be called even if JCMS has not been started, as long as a valid ServletContext is given. Valid IPs addresses are read from the file "WEB-INF/data/status.prop" the first time this method is called. |
|
static boolean |
isLegalFile(String relativePath)
Returns true if the file is authorized for JSP inclusion. |
|
static boolean |
isPersisted(Data data)
Check if the given data has been persisted (either in JStore or in the database). |
|
static boolean |
isSameId(Data d1,
Data d2)
Returns true if the 2 data have the same and non null ID. |
|
static boolean |
isStored(Data data)
Check if the given data is not null and stored |
|
static String |
join(Collection<? extends Data> coll,
String sep,
String userLang)
Joins a collection of Object with the given separator into a String. |
|
static String |
join(Iterator it,
String sep,
String userLang)
Joins a collection of Object with the given separator into a String. |
|
static void |
jsp2File(String jsp,
String filename,
HashMap sessionAttributeMap)
Render a JSP into a File. |
|
static void |
jsp2File(String jsp,
String filename,
HashMap requestParameterMap,
HashMap requestAttributeMap,
HashMap sessionAttributeMap,
HashMap contextAttributeMap,
HashMap initParameterMap,
Member loggedMember)
Render a JSP into a File. |
|
static void |
jsp2File(String jsp,
String filename,
HashMap requestParameterMap,
HashMap requestAttributeMap,
HashMap sessionAttributeMap,
HashMap contextAttributeMap,
HashMap initParameterMap,
Member loggedMember,
boolean clean)
Render a JSP into a File. |
|
static void |
jsp2FileCleanTrash()
Convenient method that clean the generated files by template engine. |
|
static void |
jsp2OutputStream(String jsp,
OutputStream out,
HashMap sessionAttributeMap)
Render a JSP into an OutputStream |
|
static void |
jsp2OutputStream(String jsp,
OutputStream out,
HashMap requestParameterMap,
HashMap requestAttributeMap,
HashMap sessionAttributeMap,
HashMap contextAttributeMap,
HashMap initParameterMap,
Member loggedMember)
Render a JSP into an OutputStream |
|
static void |
jsp2OutputStream(String jsp,
OutputStream out,
HashMap requestParameterMap,
HashMap requestAttributeMap,
HashMap sessionAttributeMap,
HashMap contextAttributeMap,
HashMap initParameterMap,
Member loggedMember,
boolean clean)
Render a JSP into an OutputStream |
|
static void |
jsp2OutputStream(String jsp,
OutputStream out,
HashMap requestParameterMap,
HashMap requestAttributeMap,
HashMap sessionAttributeMap,
HashMap contextAttributeMap,
HashMap initParameterMap,
String trashPath,
String rootPath,
ClassLoader classloader,
String classpath)
Render a JSP into an OutputStream |
|
static void |
jsp2OutputStream(String jsp,
OutputStream out,
HashMap requestParameterMap,
HashMap requestAttributeMap,
HashMap sessionAttributeMap,
HashMap contextAttributeMap,
HashMap initParameterMap,
String trashPath,
String rootPath,
ClassLoader classloader,
String classpath,
boolean clean)
Render a JSP into an OutputStream |
|
static void |
logForbiddenAccess(javax.servlet.http.HttpServletRequest request)
Log a forbidden message to the given request, at the WARN level using the JcmsUtil logger. |
|
static void |
logForbiddenAccess(org.apache.log4j.Logger lgr,
javax.servlet.http.HttpServletRequest request)
Log a forbidden message to the given request, at the WARN level using the given logger. |
|
static void |
logForbiddenAccess(org.apache.log4j.Logger lgr,
org.apache.log4j.Level level,
javax.servlet.http.HttpServletRequest request)
Log a forbidden access message (using the logSecurityIssue method) A forbidden acces to the jsp http://www.mysite.com/admin.jsp, with a pattern layout "%x %m", would output: [SECURITY] Forbidden access to http://www.mysite.com/admin.jsp |
|
static void |
logSecurityIssue(org.apache.log4j.Logger lgr,
org.apache.log4j.Level level,
Object obj)
Log the given message (object), at a the given level, with the constant JcmsConstants.LOG_TOPIC_SECURITY as a log4j NDC using the given logger. |
|
static void |
logSecurityIssue(org.apache.log4j.Logger lgr,
Object obj)
Log the given message (object), at a the WARN level using the given logger. |
|
static void |
logSecurityIssue(Object obj)
Log the given message (object), at a the WARN level using the JcmsUtil logger. |
|
static int |
loopScheduleDate(Calendar refCal,
Calendar nowCal,
int[] modifiers,
boolean forward)
Loop the reference calendar |
|
static int |
loopScheduleDate(Calendar refCal,
int[] modifiers,
boolean forward,
int maxloop)
Loop the reference calendar |
|
static void |
mergeMLMap(Map mlCopy,
Map mlMain)
Merges a multilingual (ML) map of a work copy with the corresponding ML map of its main instance. |
|
static String |
parseSchedule(String schedule,
String period,
String lang)
Parse the JCMS schedules |
|
static void |
restartWebapp(File file)
|
|
static
|
select(Collection<? extends T> dataColl,
DataSelector selector,
Comparator comparator)
Perform a selection on a Collection of Data using
the given DataSelector , and return a TreeSet sorted using the
given Comparator . |
|
static void |
setDataWriteDisabledMsg(javax.servlet.http.HttpServletRequest request,
String userLang)
|
|
static void |
setLog4jMDC()
Initialize log4j MDC variables for the current thread. |
|
static void |
setLog4jNDCMemberInfo(javax.servlet.http.HttpServletRequest request,
Member loggedMember)
Initialize log4j NDC with the given
logged member information. |
|
static
|
stringArrayToDataArray(Class<T> clazz,
String[] ids)
Convert a Data[] to a String[] composed by id |
|
static Data[] |
stringArrayToDataArray(String[] ids)
Convert a Data[] to a String[] composed by id |
|
static List<Data> |
stringToDataList(String str,
String delim)
Convert a String of Data ids into a List of Data. |
|
static
|
stringToDataList(String str,
String delim,
Class<T> clazz)
Convert a String of Data ids into a List of Data. |
|
static SortedSet<Date> |
stringToDateSet(String timesString)
Create a new SortedSet of Date from a comma seperated time in millisecond. |
|
static String |
unescapeHtml(String str)
Replace HTML entities "<" and "&" with their corresponding charaters (< and &) in the specified String. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String REVISION
public static final org.apache.oro.text.regex.Pattern DUPLICATE_PREFIX
Constructor Detail |
---|
public JcmsUtil()
Method Detail |
---|
public static boolean isLegalFile(String relativePath)
It must match the following criteria :
If property channel.security.authorized-jsp-whitelist
is set to true,
the previous blacklist criteria are still verified, but relative path is only
authorized if its value is one of the value specified value through
properties channel.security.authorized-jsp.*:
relativePath
- the path to be tested
public static String convertToCSV(String lang, boolean bool)
lang
- the language of the outputbool
- the boolean value
public static String convertToCSV(String lang, Object obj)
lang
- the language of the outputobj
- the object
public static String convertToCSV(String lang, Object obj, boolean displayObjectId)
lang
- the language of the outputobj
- the objectdisplayObjectId
- if true, the object's id will be appended to the data's name.
public static void exportCSV(Set<? extends Data> dataSet, String lang, Writer writer)
dataSet
- the set of data to be exportedlang
- the languagewriter
- the writer where to print the exportpublic static void exportCSVIntegrityReport(String lang, Writer writer)
lang
- the languagewriter
- the writer where to print the exportpublic static void exportCSVIntegrityReport(Map<Data,ControllerStatus> report, String lang, Writer writer)
report
- the report to be exportedlang
- the languagewriter
- the writer where to print the exportpublic static TreeSet getSortedClass(Collection subTypeList, Workspace workspace, String userLang)
subTypeList
- the collection that contain Classworkspace
- the workspace used to get the label associated to the class.userLang
- the current language of the user logged
public static Class getClass(String className, Class defClass)
className
- the name of the classdefClass
- the default class if class name do not match
public static Set<Member> getMemberSetFromGroups(String[] gids)
gids
-
public static List<Data> stringToDataList(String str, String delim)
str
- of id seperated with specified delimiter ie.delim
- a delimiter (required, no default value is used)
to perform the opposite operation
,
for generic method
public static <T extends Data> List<T> stringToDataList(String str, String delim, Class<T> clazz)
T
- any type of Data to retrievestr
- of id seperated with specified delimiter ie.delim
- a delimiter (required, no default value is used)clazz
- the Class of object to retrieve
to perform the opposite operation
public static <T extends Data> String dataListToString(Collection<T> list, String delim)
Example :
List<Data> list = new ArrayList<Data>(); list.add(channel.getDefaultAdmin()); list.add(channel.getDefaultGroup()); String ids = dataListToString(list, ",");will return the following string :
"j2,j_36"
T
- any class extending Datalist
- a Collection of Datadelim
- a delimiter (required, no default value is used)
to perform the opposite operation
public static String[] dataArrayToNameArray(Data[] datas, String lang)
datas
- Data[] an array of data to convertlang
- the ISO-639 language code to be used to retrieve the localized Data's name
public static String[] dataArrayToStringArray(Data[] datas)
datas
- Data[] an array of data to convert
public static Data[] stringArrayToDataArray(String[] ids)
ids
- an array of ids
public static <T extends Data> T[] stringArrayToDataArray(Class<T> clazz, String[] ids)
ids
- an array of ids
public static <T extends Data> Set<String> dataCollectionToIdSet(Collection<T> dataColl)
dataColl
- a collection of Data
to perform the opposite operation
public static <T extends Data> List<String> dataCollectionToIdList(Collection<T> dataColl)
dataColl
- a collection of Data
to perform the opposite operation
public static Set<String> dataArrayToIdSet(Data[] datas)
datas
- Data[] an array of data to convert
to perform the opposite operation
public static <T extends Data> Set<T> idCollectionToDataSet(Collection<String> idColl, Class<T> clazz)
T
- any type of Data to retrieveidColl
- a Collection of data idclazz
- the Class of object to retrieve
to perform the opposite operation
public static <T extends Data> LinkedHashSet<T> idCollectionToDataLinkedHashSet(Collection<String> idColl, Class<T> clazz)
T
- any type of Data to retrieveidColl
- a Collection of data idclazz
- the Class of object to retrieve
to perform the opposite operation
public static <T extends Data> TreeSet<T> idCollectionToDataTreeSet(Collection<String> idColl, Class<T> clazz)
T
- any type of Data to retrieveidColl
- a Collection of data idclazz
- the Class of object to retrieve
to perform the opposite operation
public static <T extends Data> HashSet<T> idCollectionToDataHashSet(Collection<String> idColl, Class<T> clazz)
T
- any type of Data to retrieveidColl
- a Collection of data idclazz
- the Class of object to retrieve
to perform the opposite operation
public static <T extends Data> List<T> idCollectionToDataList(Collection<String> idColl, Class<T> clazz)
T
- any type of Data to retrieveidColl
- a Collection of data idclazz
- the Class of object to retrieve
to perform the opposite operation
public static <T extends Data> void fillIdCollectionWithDataCollection(Collection<String> idColl, Class<T> clazz, Collection<T> dataColl)
public static <T extends Data> T[] idCollectionToDataArray(Collection<String> idColl, Class<T> clazz)
public static String join(Collection<? extends Data> coll, String sep, String userLang)
getDataName(userLang)
method for each iterated
Data.
coll
- the collectionsep
- the separatoruserLang
- the ISO-639 language code to be used to retrieve localized titles
Util.join(Iterator,String,int,String)
public static String join(Iterator it, String sep, String userLang)
getDataName(userLang)
method for each iterated
Data.
it
- the iterator of the collectionsep
- the separatoruserLang
- the ISO-639 language code to be used to retrieve localized titles
Util.join(Iterator,String,int,String)
public static Map expandArray(Map mlMap, Map main)
mlMap
- Map of key / String[]main
- Map of key / String[] used to calculate String[] length
public static String[] expandArray(String[] array, String[] main)
array
- String[]main
- String[] used to calculate String[] length
public static Date getScheduleDate(Date reference, long schedule, boolean forward)
reference
- the reference starting dateforward
- forward to now or backward before nowschedule
- the time to add to reference date.
public static Date getScheduleDate(Date reference, Date targetDate, long schedule, boolean forward)
reference
- the reference starting datetargetDate
- the target dateschedule
- the time to add to reference date.forward
- should forward or backward to targetDate
public static Date[] getScheduleDate(Date reference, Date targetDate, Date[] toUpdate, long schedule, boolean forward)
reference
- the reference starting datetargetDate
- the target datetoUpdate
- the date to updateschedule
- the time to add to reference date.forward
- should forward or backward to targetDatepublic static int loopScheduleDate(Calendar refCal, Calendar nowCal, int[] modifiers, boolean forward)
refCal
- the reference starting calendarnowCal
- the target calendarmodifiers
- the modifier provides by getScheduleModifier()forward
- should forward or backward to targetDate
public static int loopScheduleDate(Calendar refCal, int[] modifiers, boolean forward, int maxloop)
refCal
- the reference starting calendarmodifiers
- the modifier provides by getScheduleModifier()forward
- should forward or backward to targetDatemaxloop
- the loop to do or -1
public static int[] getScheduleModifier(long schedule, boolean forward)
schedule
- the time to add to reference date.forward
- should forward or backward to targetDatepublic static String parseSchedule(String schedule, String period, String lang)
public static String formatSchedule(String userLang, String schedule)
30 20 * * 3 *
will be
formatted as Every Tuesday at 8:30 PM.
userLang
- the user languageschedule
- the cron schedule to be formatted.
public static SortedSet<Date> stringToDateSet(String timesString)
timesString
- a String with comma sperated times in millissecond
public static String dateSetToString(SortedSet<Date> dateSet)
dateSet
- a SortedSet of Date.
public static String getWebappClasspath()
public static FileFilter getIgnoredResourcesFileFiler()
"file.regexp.ignore"
.
Current implementation uses a reversed file filter of a regexp file filer. If the regexp defined by the property could not be compiled, a warning message is logged and a TrueFileFilter (accepting all files) is returned.
getIgnoredResourcesFileFiler(boolean)
public static FileFilter getIgnoredResourcesFileFiler(boolean accept)
"file.regexp.ignore"
.
If accept parameter is set to false, uses a reversed file filter of a regexp file filer.
If the regexp defined by the property could not be compiled, a warning message is
logged and a TrueFileFilter (accepting all files) is returned.
accept
- true to accept ignored Files and refuse all other,
false to refuse ignored Files and accept all others.
public static String getPrefixedTitle(String prefix, String title, boolean replaceOnly)
prefix
- the prefix to appendtitle
-
public static void jsp2File(String jsp, String filename, HashMap sessionAttributeMap) throws Exception
jsp
- the JSP to be rendered. Path relative to the webapp root folder, must start with "/". E.g : /plugins/FooBarPlugin/jsp/dump.jsp
.filename
- the output file where the jsp process output is written. Path relative to the webapp root folder, with or without starting slash. E.g. : /WEB-INF/tmp/dump.txt
.sessionAttributeMap
- the session attributes
Exception
public static void jsp2File(String jsp, String filename, HashMap requestParameterMap, HashMap requestAttributeMap, HashMap sessionAttributeMap, HashMap contextAttributeMap, HashMap initParameterMap, Member loggedMember) throws Exception
jsp
- the JSP to be rendered. Path relative to the webapp root folder, must start with "/". E.g : /plugins/FooBarPlugin/jsp/dump.jsp
.filename
- the output file where the jsp process output is written. Path relative to the webapp root folder, with or without starting slash. E.g. : /WEB-INF/tmp/dump.txt
.requestParameterMap
- the request parametersrequestAttributeMap
- the request attributessessionAttributeMap
- the session attributescontextAttributeMap
- the context attributesinitParameterMap
- the init parametersloggedMember
- the logged member used to process the JSP
Exception
public static void jsp2File(String jsp, String filename, HashMap requestParameterMap, HashMap requestAttributeMap, HashMap sessionAttributeMap, HashMap contextAttributeMap, HashMap initParameterMap, Member loggedMember, boolean clean) throws Exception
jsp
- the JSP to be rendered. Path relative to the webapp root folder, must start with "/". E.g : /plugins/FooBarPlugin/jsp/dump.jsp
.filename
- the output file where the jsp process output is written. Path relative to the webapp root folder, with or without starting slash. E.g. : /WEB-INF/tmp/dump.txt
.requestParameterMap
- the request parametersrequestAttributeMap
- the request attributessessionAttributeMap
- the session attributescontextAttributeMap
- the context attributesinitParameterMap
- the init parametersloggedMember
- the logged member used to process the JSPclean
- if true the compiled servlet is removed once processed.
Exception
public static void jsp2OutputStream(String jsp, OutputStream out, HashMap sessionAttributeMap) throws Exception
jsp
- the JSP to be rendered. It must start with "/".out
- the outputstreamsessionAttributeMap
- the session attributes
Exception
public static void jsp2OutputStream(String jsp, OutputStream out, HashMap requestParameterMap, HashMap requestAttributeMap, HashMap sessionAttributeMap, HashMap contextAttributeMap, HashMap initParameterMap, Member loggedMember) throws Exception
jsp
- the JSP to be rendered. It must start with "/".out
- the outputstreamrequestParameterMap
- the request parametersrequestAttributeMap
- the request attributessessionAttributeMap
- the session attributescontextAttributeMap
- the context attributesinitParameterMap
- the init parametersloggedMember
- the logged member used to process the JSP
Exception
public static void jsp2OutputStream(String jsp, OutputStream out, HashMap requestParameterMap, HashMap requestAttributeMap, HashMap sessionAttributeMap, HashMap contextAttributeMap, HashMap initParameterMap, Member loggedMember, boolean clean) throws Exception
jsp
- the JSP to be rendered. It must start with "/".out
- the outputstreamrequestParameterMap
- the request parametersrequestAttributeMap
- the request attributessessionAttributeMap
- the session attributescontextAttributeMap
- the context attributesinitParameterMap
- the init parametersloggedMember
- the logged member used to process the JSPclean
- if true the compiled servlet is removed once processed.
Exception
public static void jsp2OutputStream(String jsp, OutputStream out, HashMap requestParameterMap, HashMap requestAttributeMap, HashMap sessionAttributeMap, HashMap contextAttributeMap, HashMap initParameterMap, String trashPath, String rootPath, ClassLoader classloader, String classpath) throws Exception
jsp
- the JSP to be rendered. It must start with "/".out
- the outputstreamrequestParameterMap
- the request parametersrequestAttributeMap
- the request attributessessionAttributeMap
- the session attributescontextAttributeMap
- the context attributesinitParameterMap
- the init parameterstrashPath
- rootPath
- classloader
- classpath
-
Exception
public static void jsp2OutputStream(String jsp, OutputStream out, HashMap requestParameterMap, HashMap requestAttributeMap, HashMap sessionAttributeMap, HashMap contextAttributeMap, HashMap initParameterMap, String trashPath, String rootPath, ClassLoader classloader, String classpath, boolean clean) throws Exception
jsp
- the JSP to be rendered. It must start with "/".out
- the outputstreamrequestParameterMap
- the request parametersrequestAttributeMap
- the request attributessessionAttributeMap
- the session attributescontextAttributeMap
- the context attributesinitParameterMap
- the init parameterstrashPath
- rootPath
- classloader
- classpath
- clean
- if true the compiled servlet is removed once processed.
Exception
public static void jsp2FileCleanTrash()
public static void restartWebapp(File file)
public static String escapeHtml(String str)
The side effect of using this method is that the resulting content can only be
outputed to an HTML stream. If the content is printed in a plaintext, csv, mail
or other non HTML stream, characters "<" and "&" will appear as HTML entity.
To limit this side effect, ampersand are only escaped when they would match
an HTML entity (thus being interpreted by browser at display/re-edition).
This method perform 2 pattern replacements :
s/ &([^\s;]{2,20}); / &$1; /g s/ < / < /gAmpersand (&) are converted in the corresponding HTML entity since JCMS 7.0.4 and 7.1.1.
str
- the string to be escaped
public static String unescapeHtml(String str)
This method does the opposite work of escapeHtml(String)
.
str
- the string to be escaped
public static ControllerStatus checkHtml(String str, String field)
str
- the string to be checkedfield
- the name of the field which is checked
BasicRightPolicyFilter.checkHtml(String,String)
public static ControllerStatus checkHtml(String[] array, String field)
array
- the array of string to be checkedfield
- the name of the field which is checked
checkHtml(String,String)
public static ControllerStatus checkHtml(Map map, String field)
map
- the map with the values to be checkedfield
- the name of the field which is checked
checkHtml(String,String)
public static Data[] getUpdatedData(Data[] old, Map dataMap)
old
- dataMap
-
public static TreeSet getUpdatedData(Collection old, Map dataMap, boolean retrieveAll)
old
- the old set of datadataMap
- the mapretrieveAll
- if newdata doesn't exists then leave old data
public static TreeSet getUpdatedData(Collection old, Map dataMap)
old
- the old set of datadataMap
- the map
getUpdatedData(Collection, Map, boolean)
public static ControllerStatus checkFieldMLRequired(Publication pub, String fieldName, String value, HashMap valueML)
pub
- the publicationfieldName
- the name of the fieldvalue
- the value of the fieldvalueML
- the ML value of the field
public static ControllerStatus checkFieldRequired(Publication pub, String fieldName, Object value)
pub
- the publicationfieldName
- the name of the fieldvalue
- the value of the field
public static String glpd(String prop)
prop
- the language property to resolve, for example "ui.com.lbl.contents"
public static String glp(String lang, String prop, Object... params)
Example :
String i18nStr = JcmsUtil.glp("en", "ui.com.lbl.byte", 6);
lang
- the language in which you want the given propertyprop
- the language property to resolve, for example "ui.com.lbl.contents"params
- an array of parameters to use to for the format of property
public static String glp(String lang, LangProperty prop)
lang
- the language in which you want the given propertyprop
- the LangProperty
instance corresponding to the property you want to resolve.
public static void setLog4jMDC()
MDC
variables for the current thread.
public static void setLog4jNDCMemberInfo(javax.servlet.http.HttpServletRequest request, Member loggedMember)
NDC
with the given
logged member information. Channel.getCurrentDelegateMember()
].
request
- the current HttpServletRequestloggedMember
- the Member currently loggedpublic static void logForbiddenAccess(org.apache.log4j.Logger lgr, org.apache.log4j.Level level, javax.servlet.http.HttpServletRequest request)
lgr
- the logger to uselevel
- the level of the log messagerequest
- the request where the forbidden is issued frompublic static void logForbiddenAccess(org.apache.log4j.Logger lgr, javax.servlet.http.HttpServletRequest request)
logForbiddenAccess(Logger lgr, Level level, HttpServletRequest request)
public static void logForbiddenAccess(javax.servlet.http.HttpServletRequest request)
logForbiddenAccess(Logger lgr, Level level, HttpServletRequest request)
public static void logSecurityIssue(org.apache.log4j.Logger lgr, org.apache.log4j.Level level, Object obj)
lgr
- the logger to uselevel
- the level of the log messageobj
- the object (message) to logpublic static void logSecurityIssue(org.apache.log4j.Logger lgr, Object obj)
logSecurityIssue(Logger lgr, Level level, Object obj)
public static void logSecurityIssue(Object obj)
logSecurityIssue(Logger lgr, Level level, Object obj)
public static String getPubImg(Publication pub)
pub
- the publication
public static String getPubIcon(Publication pub)
pub
- the publication
public static boolean isStored(Data data)
data
- the data to be checked
public static boolean isPersisted(Data data)
data
- the data to be checked
public static <T> TreeSet<T> select(Collection<? extends T> dataColl, DataSelector selector, Comparator comparator)
Collection
of Data
using
the given DataSelector
, and return a TreeSet sorted using the
given Comparator
. Comparator
is given, CdateComparator
is used.
dataColl
- the Collection
of Data
to select.selector
- the DataSelector
to use.comparator
- the Comparator
to use.
TreeSet
of Data
.public static Collection applyDataSelector(Collection dataColl, DataSelector selector)
DataSelector
by removing non selected Data
from the given Collection
.
dataColl
- a Collection
of Data
from which to remove non selected data.selector
- the DataSelector
to apply
Collection
that was given but modified.public static void mergeMLMap(Map mlCopy, Map mlMain)
mlCopy
- A ML map of the work copymlMain
- A ML map of the main instancepublic static String getLangValue(Map map, String lang)
map
- the language map {lang, value}lang
- the language. If null use the main language. If result null, use an arbitrary one.
public static Map<String,String> getLanguageMap(String[] values)
escapeHtml(String)
).
values
- the values sorted according the language list.
public static Map<String,String> getLanguageMap(String[] values, boolean escapeHtml)
values
- the values sorted according the language list.escapeHtml
- true to invoke escapeHtml method on each value stored in map, false to leave text as is.
public static Map<String,String> getLanguageMap(String propKey)
propKey
- the property key
public static List getLanguageMapList(String[] values)
values
- the values sorted according the order then according the language list.
public static String[] getLanguageArray(Map map)
map
- the language map {lang, value}
public static void addData(TreeSet set, Class clazz, Data data)
set
- the Setclazz
- the class used to filter datadata
- the data to be addedpublic static void addData(TreeSet set, Class clazz, Data[] array)
set
- the Setclazz
- the class used to filter dataarray
- the array of data to be addedpublic static void addData(TreeSet set, Class clazz, Collection coll)
set
- the Setclazz
- the class used to filter datacoll
- the collection of data to be addedpublic static void addData(TreeSet set, Class clazz, Map mlMap)
set
- the Setclazz
- the class used to filter datamlMap
- the ML map of data to be addedpublic static void addFileDocument(Set<FileDocument> set, String filename)
set
- a set of FileDocumentfilename
- the filenamepublic static void addFileDocument(Set<FileDocument> set, String... filenames)
set
- a set of FileDocumentfilenames
- an array of filenamepublic static void addFileDocument(Set<FileDocument> set, Collection<String> filenameColl)
set
- a set of FileDocumentfilenameColl
- a collection of filenamepublic static void addFileDocument(Set<FileDocument> set, String filenameMainLanguage, Map<String,String> mlMap)
set
- a set of FileDocumentfilenameMainLanguage
- a filenamemlMap
- a map which contains filename as valuespublic static void addFileDocument(Set<FileDocument> set, String[] filenamesMainLanguage, Map<String,String[]> mlMap)
set
- a set of FileDocumentfilenamesMainLanguage
- an array of filenamemlMap
- a map which contains array of filename as valuespublic static String getId(Data data)
data
- the data (may be null)
public static boolean isSameId(Data d1, Data d2)
d1
- the first datad2
- the second data
public static String getFieldLangAttributes(Data data, String fieldName, String userLang)
English ("en") | Arabic ("ar") | |
Introduction ("intro") | an introduction | |
Content ("content") | some content | ألف |
getFieldLangAttributes(theSmallNews, "intro", userLang); // userLang='ar'
lang="en" xml:lang="en" dir="ltr"
.getFieldLangAttributes(theSmallNews, "content", userLang); // userLang='ar'
lang="ar" xml:lang="ar" dir="rtl"
.
data
- the Publication or Data of which to check field value in given languagefieldName
- the name of the field to check.userLang
- the language in which the field was should be displayed
Channel.isUsingAdvancedI18N()
,
Channel.getUsedLanguage(Data, String, String)
,
getLangAttributes(String)
public static String getLangAttributes(String lang)
For example : lang="fr" xml:lang="fr" dir="ltr"
lang
- the language of which to generate html attributes or null to use default jcms language
Channel.getLanguageDirection(String)
public static String getUntranslatedZoneAttribute(String lang)
lang
- the current language (ISO-639)
Channel.getLanguageDirection(String)
public static String getRevision(Class clazz)
clazz
- the class to get the revision.
public static String getReleasedRevision(Class clazz)
clazz
- the class to get the revision.
public static List<Class<?>> getClassList()
public static List<Class<?>> getClassList(String libDir, ClassLoader classLoader)
libDir
- the path for lib directoryclassLoader
- the classLoader to be used
public static String getXHtmlMetaTag(String name, String content)
name
- the name attributecontent
- the content attribute
public static String getXHtmlMetaHttpEquivTag(String httpEquiv, String content)
httpEquiv
- the httpEquiv attributecontent
- the content attribute
public static String getXHtmlMetaTag(String keyName, String key, String content)
keyName
- the name of the key (eg "name", or "http-equiv")key
- the key attributecontent
- the content attribute
public static int[] getPublicationDetails(Class clazz, Member mbr, Workspace ws)
clazz
- the classmbr
- the member who performs the requestws
- the workspace
public static Set extractExternalUrl(String text)
text
- the text to be parsed.
public static boolean isAuthorizedToAccessStatusInfo(javax.servlet.ServletContext context, javax.servlet.http.HttpServletRequest request)
context
- a required ServletContext (used to retrieve file path of the
status.prop file inside the webapp).request
- the request of which to check access to status, must not be null.
public static String getWebHelpHome(javax.servlet.http.HttpServletRequest request)
request
- the HttpRequest
public static String getWebHelpUri(javax.servlet.http.HttpServletRequest request, String entry)
request
- the HttpRequestentry
- the entry to display the documentation
public static String[] getWebHelpUriAndIcon(javax.servlet.http.HttpServletRequest request, String entry, boolean home)
request
- the HttpRequest (to determine the JSP)entry
- the WebHelp entry to access (if empty, find the entry from the request)home
- if true display user's guide home page
public static String getDisplayUrl()
public static String getDisplayUrl(Data data, Locale locale)
DescriptiveURLs
)
the url will be generated using DescriptiveURLs.getDescriptiveURL(Data, Locale)
otherwise, a standard "display.jsp?id=" URL is generated. getDisplayUrl()
.
data
- the data for which the URL will be generatedlocale
- the Locale
to use for I18N and localized operations
Data.getDisplayUrl(Locale)
public static String getDisplayUrl(Data data, Locale locale, String params, boolean escapeAmpersand)
DescriptiveURLs
)
the url will be generated using DescriptiveURLs.getDescriptiveURL(Data, Locale)
otherwise, a standard "display.jsp?id=" URL is generated. String link = JcmsUtil.getDisplayUrl(myFileDoc, userLocale, "details=true&a=b", true);
String redirect = JcmsUtil.getDisplayUrl(homeCat, locale, "mid=" + mbr.getId() + "&jsp=" + ResourceHelper.getMemberDisplay(), false);
data
- the data for which the URL will be generatedlocale
- the Locale
to use for I18N and localized operationsparams
- the parameter string to add, it should not start
with any ampersand ('&' or '&') as it will be added automaticallyescapeAmpersand
- will use "& true, "&" if false
public static String getDisplayUrlWithUpdatedParams(Data data, Locale locale, javax.servlet.http.HttpServletRequest request, String[] names, String[] newValues, String[] removePatterns, boolean escapeAmpersand)
DescriptiveURLs
)
the url will be generated using DescriptiveURLs.getDescriptiveURL(Data, Locale)
otherwise, a standard "display.jsp?id=" URL is generated.
data
- the data for which the URL will be generatedlocale
- the Locale
to use for I18N and localized operationsrequest
- the current HttpServletRequest
of which to
update/add/remove params.
If null, this method as the same behavior as getDisplayUrl(Data, Locale)
.names
- an array of String which contains the name of the parametersnewValues
- an array of String which contains the values of
the parameters (if newValue[i] is null the names[i] parameter is
removed)removePatterns
- any parameter name containing one of the given Strings will be removed from the parameters' listescapeAmpersand
- will use "& true, "&" if false
public static String getAbsDisplayUrlWithUpdatedParams(Data data, Locale locale, javax.servlet.http.HttpServletRequest request, String[] names, String[] newValues, String[] removePatterns, boolean escapeAmpersand)
DescriptiveURLs
)
the url will be generated using DescriptiveURLs.getDescriptiveURL(Data, Locale)
otherwise, a standard "display.jsp?id=" URL is generated.
data
- the data for which the URL will be generatedlocale
- the Locale
to use for I18N and localized operationsrequest
- the current HttpServletRequest
of which to
update/add/remove params.
If null, this method as the same behavior as getDisplayUrl(Data, Locale)
.names
- an array of String which contains the name of the parametersnewValues
- an array of String which contains the values of
the parameters (if newValue[i] is null the names[i] parameter is
removed)removePatterns
- any parameter name containing one of the given Strings will be removed from the parameters' listescapeAmpersand
- will use "& true, "&" if false
public static String getDisplayUrlWithAddedParam(Data data, Locale locale, javax.servlet.http.HttpServletRequest request, String name, String value, boolean escapeAmpersand)
DescriptiveURLs
)
the url will be generated using DescriptiveURLs.getDescriptiveURL(Data, Locale)
otherwise, a standard "display.jsp?id=" URL is generated.
data
- the data for which the URL will be generatedlocale
- the Locale
to use for I18N and localized operationsrequest
- the current HttpServletRequest
of which to
update/add/remove params.
If null, this method as the same behavior as getDisplayUrl(Data, Locale)
.name
- a String which contains the name of the parameter to addvalue
- a String which contains the value of the parameter to add
(if value is null the parameter is not added, but it wont be removed from existing params)escapeAmpersand
- will use "& true, "&" if false
public static Map<String,String> getLangChildrenMap(org.jdom.Element elt, String childName, String info)
elt
with their xml:lang
as key.
If the entry for main language does not exists, an error message is append in the logs and
the value "???" is assigned for the main language
elt
- the ElementchildName
- the name of the child
lang
, elt
}.XmlUtil.getLangChildrenMap(Element, String)
public static String getNewDirectory(File baseDir, String subDir)
baseDir
- the base directory (eg /usr/local/tomcat/webapps/jcms/)subDir
- an optionnal sub directory, may be null (eg upload/docs/image/gif/)
IOUtil.getNewDirectory(File, String, long)
public static void setDataWriteDisabledMsg(javax.servlet.http.HttpServletRequest request, String userLang)
public static boolean checkDataWriteDisabled(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String redirect, String userLang) throws IOException
request
- The current requestresponse
- The current responseredirect
- The wished redirectuserLang
- The lang of the current user
IOException
public static String convertMultilingualFieldToXml(String mainValue, Map<String,String> valuesMap)
Example :
String xml = convertMultilingualFieldToXml(pub.getTitle(), pub.getTitleML());Will lead to the following xml :
<?xml version='1.0' encoding='UTF-8'?> <ml> <value xml:lang="en">Title</value> <value xml:lang="fr">Titre</value> </ml>
mainValue
- the value of the field in the channel main language.valuesMap
- the values of the field in other languages (ISO-639 language code as the key, value of field in value)
public static org.jdom.Element convertMultilingualFieldToXmlElement(String mainValue, Map<String,String> valuesMap)
Example :
String xml = convertMultilingualFieldToXml(pub.getTitle(), pub.getTitleML());Will lead to the following xml :
<?xml version='1.0' encoding='UTF-8'?> <ml> <value xml:lang="en">Title</value> <value xml:lang="fr">Titre</value> </ml>
mainValue
- the value of the field in the channel main language.valuesMap
- the values of the field in other languages (ISO-639 language code as the key, value of field in value)
public static Map<String,String> convertMultilingualFieldXmlToMap(String xml)
Example given the following text :
<?xml version='1.0' encoding='UTF-8'?> <ml> <value xml:lang="en">Title</value> <value xml:lang="es">Titulo</value> <value xml:lang="fr">Titre</value> </ml>Returns a map containing all values :
{ "en" => "Title", "fr" => "Titre", "es" => "Titulo" }
xml
- an xml representation of a multilingual field, as returned by convertMultilingualFieldToXml(String, Map)
public static void checkJDBCConnection(String driver, String url, String user, String password) throws Exception
driver
- the class name of the JDBC driverurl
- a database url of the form jdbc:subprotocol:subnameuser
- the database user on whose behalf the connection is being madepassword
- the user's password
Exception
- exceptionpublic static boolean checkUrid(String urid)
urid
- the urid
public static String getVirtualId(String virtualId, String id)
Example :
JcmsUtil.getVirtualId("$jcmsplugin.myplugin.my-virtual-id", "c_42");
will returns :
"$jcmsplugin.myplugin.my-virtual-id"
if this virtual could be resolved to id "c_42"
"c_42"
otherwise
virtualId
- a virtual id such as "$jcmsplugin.myplugin.my-virtual-id" (if anything else than a virtual id is specified, the realId is returned)id
- a data id
public static String getVirtualIdList(String stringWithPossiblyVirtualIds, String stringOfRealIds)
stringWithPossiblyVirtualIds
- it is a value already used, possibly a virtual idstringOfRealIds
- it is the value newly set. updated or not.
public static int getWorkerCount()
public static String getIgnoreFileRegexp()
public static String getIgnoreSignRegexp()
public static String getFriendlyDate(Date date, int style, boolean showTime, Locale locale)
date
- the datestyle
- the date and time format style (e.g. DateFormat.SHORT)showTime
- if true show the timelocale
- the locale
public static String getFriendlyDate(Date date, int style, boolean showTime, Locale locale, boolean beginSentence)
date
- the datestyle
- the date and time format style (e.g. DateFormat.SHORT)showTime
- if true show the timelocale
- the localebeginSentence
- if true returns a string suitable for a sentence beginning.
public static String getFriendlyPeriod(Date startDate, Date endDate, Locale locale)
startDate
- the start date (must not be null)endDate
- the end date (may be null)locale
- the locale
public static String convertUri2Url(String text, String baseURL)
text
- baseURL
-
public static ObjectLongTreeMap getFileSizeMap()
public static ObjectLongTreeMap getFileSizeMap(Workspace ws)
ws
- the workspace
public static String getEscapedEmailName(String value)
value
- the value to check
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |