public class WikittyUtil extends Object implements WikittyConstants
| Modifier and Type | Field and Description |
|---|---|
protected static Locale |
CANONICAL_LOCALE |
protected static TimeZone |
CANONICAL_TZ
used to format date for solr
|
static String |
DATE_FORMAT |
static String[] |
DATE_FORMAT_ALLOWED |
static org.nuiton.wikitty.WikittyUtil.WikittyDateConverter |
dateConverter |
static String |
DEFAULT_MAJOR_VERSION |
static String |
DEFAULT_MAJOR_VERSION_PREFIX |
static String |
DEFAULT_MINOR_VERSION |
static String |
DEFAULT_VERSION |
static String |
extensionFieldNamePattern
Pattern que doivent respecter les noms des champs des extensions
|
static String |
extensionNamePattern
Pattern que doivent respecter les noms des extensions
|
protected static Pattern |
fieldPattern
Field pattern parser
group 1: type (string)
group 2: name (string)
group 3: lower bound (number) can be null
group 4: upper bound (number) can be null, mutually exclusive with group 5
group 5: upper bound (n or *) can be null
group 6: unique can be null (legacy configuration, prefer use of
unique="true"
group 7: not null can be null (legacy configuration, prefer use of notNull="true"
group 8: all tag/value (toto=titi tutu=tata;lala tata="truc bidulle") |
protected static Pattern |
formatMatcher
Pattern de recherche des field dans les chaines de formatage
|
static Map<Class<?>,Class<?>> |
interfaceToClass
contains mapping between interface and concret class that must be used
|
static String |
nbsp
no break space, used to parse BigDecimal
|
static String |
SOLR_DATE_FORMAT |
protected static org.apache.commons.lang3.time.FastDateFormat |
solrDateFormat |
protected static Pattern |
tagValuesPattern |
protected static String |
tagValuesPatternString
Pattern for tag value: tag="value" or tag=value.
|
FQ_FIELD_NAME_SEPARATOR, FQ_FIELD_NAME_SEPARATOR_REGEX, FQ_META_EXTENSION_SEPARATOR, FQ_META_EXTENSION_SEPARATOR_REGEX| Constructor and Description |
|---|
WikittyUtil() |
| Modifier and Type | Method and Description |
|---|---|
static LinkedHashMap<String,FieldType> |
buildFieldMapExtension(String... definitions)
Create map from string representation.
|
static <E> E |
cast(Object obj,
Class<E> clazz)
Try to cast obj to class passed in argument.
|
static Wikitty |
checkExtensionVersion(String securityToken,
WikittyService wikittyService,
Wikitty wikitty,
BusinessEntityImpl entity)
Check extension default, i.e.
|
static Wikitty |
clone(Wikitty wikittyToClone,
boolean genId)
Clone wikitty with new id if
genId is true |
static void |
copyBean(Object source,
Object dest)
Copy all properties (get/set) from source to destination,
except wikitty property
|
static byte[] |
crypt(String algo,
String password,
byte[] value) |
static byte[] |
decrypt(String algo,
String password,
byte[] value) |
static String |
format(String formatWikitty,
Wikitty w)
Format wikitty for string representation.
|
static String |
formatDate(Date date) |
static Object |
fromString(FieldType field,
String s)
Convert string field representation to correct value type.
|
static Object |
fromStringForExport(FieldType field,
String s)
Convert object o for export CSV/XML.
|
static String |
genSecurityTokenId()
SecurityToken is used like wikitty id and must begin with UUID_
|
static String |
genUID() |
static Class<?> |
getClass(Object value)
Return class of argument, if argument is null, return null.
|
static String |
getExtensionNameFromFQFieldName(String fqFieldName)
given a fully qualified field name, return the name of the extension
TODO poussin 20101208 redondant code with
WikittyExtension.extractExtensionName(java.lang.String) |
static String |
getExtensionNameFromFQMetaExtensionName(String fqFieldName)
given a fully qualified meta-extension name, return the name of the extension
|
static String |
getFieldNameFromFQFieldName(String fqFieldName)
given a fully qualified field name, return the name of the field
TODO poussin 20101208 redondant code with
WikittyExtension.extractFieldName(java.lang.String) |
static <E> E |
getFieldValueFromFQFieldName(String fqField,
BusinessEntity entity)
Extract field value corresponding of fqField in entity
|
static <E> List<E> |
getFieldValuesFromFQFieldName(String fqField,
Iterable<? extends BusinessEntity> entities)
Extract all field values corresponding of fqField in list of entities
|
static String |
getFQFieldName(String extensionName,
String fieldName)
given names of extension and field, return a fully qualified field name
|
static String |
getFQMetaExtensionName(String metaExtensionName,
String extensionName)
given names of meta-extension and extension, return a fully qualified meta-extension name
|
static List<String> |
getIds(Iterable<? extends BusinessEntity> entities)
Extract all id for beans
|
static String |
getMetaExtensionNameFromFQMetaExtensionName(String fqFieldName)
given a fully qualified meta-extension name, return the name of the meta-extension.
|
static String |
getMetaFieldName(String metaExtensionName,
String extensionName,
String fieldName)
Get the FQN of a metaExtension field.
|
static String |
getUniqueLoginName()
Recherche le meilleur nom a utiliser comme pseudo pour cette machine.
|
static Wikitty |
getWikitty(Object o)
Try to convert object to wikitty, this is possible only if object is
Wikitty or BusinessEntityImpl.
|
static Wikitty |
getWikitty(WikittyService service,
String securityToken,
BusinessEntity entity)
Deprecated.
|
static String |
incrementMajorRevision(String v)
increment major version.
|
static String |
incrementMinorRevision(String v)
Increment minor version.
|
static <E extends BusinessEntity> |
newInstance(Class<E> clazz)
Create new instance of WikittyDto without Wikitty object passed in
argument.
|
<E extends BusinessEntity> |
newInstance(Class<E> target,
BusinessEntityImpl source)
Cast Business object to another Business Object
If source don't have target extension, this extension is added
|
static <E extends BusinessEntity> |
newInstance(Class<E> target,
List<Wikitty> wikitties)
Create new Business Entity List from wikitties
|
static <E extends BusinessEntity> |
newInstance(Class<E> target,
Set<Wikitty> wikitties)
Create new Business Entity Set from wikitties
|
static <E extends BusinessEntity> |
newInstance(Class<E> target,
Wikitty w)
Create new Business Entity with specified Wikitty
|
static <E extends BusinessEntity> |
newInstance(String securityToken,
WikittyService wikittyService,
Class<E> clazz,
Wikitty w)
Deprecated.
since 3.3 il n'est pas coherent d'acceder au serveur lorsqu'on
instancie un objet. La verification de la securite de toute facon ne
se fait qu'au moment de la sauvegarde.
|
static String |
normalizeVersion(String version)
if version if null return 0 else version If version is not in format
|
static Date |
parseDate(String dateAsString) |
static String |
parseField(String def,
FieldType fieldType)
parse FieldType definition and return field name.
|
static List |
singletonList(Object o)
Creation d'une list contenant une seule valeur.
|
static Map |
singletonMap(Object k,
Object v)
Creation d'une map contenant une seule valeur.
|
static Map<String,String> |
tagValuesToMap(String tagValues)
Deserialize tagValues to map
|
static String |
tagValuesToString(Map<String,String> tagValues)
Serialize tagValues to string
|
static BigDecimal |
toBigDecimal(Object value)
Get value as BigDecimal.
|
static byte[] |
toBinary(Object value)
Get value as Binary.
|
static boolean |
toBoolean(Object value)
Convert object to boolean:
- null => false - 0 => false - numeric => true
- object.toString() == false => false - other => true
|
static Date |
toDate(Object value) |
static <E> List<E> |
toList(Object value,
Class<E> clazz)
Convert value to list.
|
static Number |
toNumber(Class target,
BigDecimal v)
Converti un BigDecimal en un nombre
|
static String |
toString(Object value)
Convert Object to String representation if value is not null
Wikitty is converted to id, and Date to SolrDateFormat
|
static String |
toStringForExport(FieldType field,
Object o)
Convert object o for export CSV/XML.
|
static String |
toStringForSearchEngine(FieldType field,
Object o)
Convert object o for indexation
|
static String |
toWikitty(Object value)
Return wikitty id and not wikitty objet because this method can be call
on server or client side and it's better to keep conversion between id
and objet to the caller
|
static void |
updateWikitty(Wikitty w,
BusinessEntity be)
Met a jout les donnees d'un wikitty via les informations d'un BusinessEntity
|
static boolean |
versionEquals(String v1,
String v2)
Return true if v1 and v2 are equals.
|
static boolean |
versionGreaterThan(String v1,
String v2)
Return true if v1 greater than v2.
|
public static final String extensionNamePattern
public static final String extensionFieldNamePattern
public static final String DEFAULT_MAJOR_VERSION
public static final String DEFAULT_MINOR_VERSION
public static final String DEFAULT_MAJOR_VERSION_PREFIX
public static final String DEFAULT_VERSION
public static final String DATE_FORMAT
public static final String SOLR_DATE_FORMAT
protected static final TimeZone CANONICAL_TZ
protected static final Locale CANONICAL_LOCALE
protected static final org.apache.commons.lang3.time.FastDateFormat solrDateFormat
public static final String[] DATE_FORMAT_ALLOWED
public static final String nbsp
public static Map<Class<?>,Class<?>> interfaceToClass
protected static String tagValuesPatternString
protected static Pattern tagValuesPattern
protected static Pattern fieldPattern
unique="true"
notNull="true"
protected static Pattern formatMatcher
Formatter#formatSpecifier}public static org.nuiton.wikitty.WikittyUtil.WikittyDateConverter dateConverter
public static Date parseDate(String dateAsString) throws ParseException
ParseExceptionpublic static String formatDate(Date date) throws ParseException
ParseExceptionpublic static String parseField(String def, FieldType fieldType)
def - string field definitionfieldType - object used to put parsed informationpublic static String tagValuesToString(Map<String,String> tagValues)
tagValues - tagValues as mappublic static Map<String,String> tagValuesToMap(String tagValues)
tagValues - tagValues as stringpublic static LinkedHashMap<String,FieldType> buildFieldMapExtension(String... definitions)
definitions - extension definitionpublic static String normalizeVersion(String version)
version - versionpublic static boolean versionEquals(String v1, String v2)
v1 - versionv2 - versiontrue if v1 == v2public static boolean versionGreaterThan(String v1, String v2)
v1 - versionv2 - versiontrue if v1 > v2public static String incrementMinorRevision(String v)
v - version as 3.1 where 1 is minor and 3 majorpublic static String incrementMajorRevision(String v)
v - version as 3.2 where 2 is minor and 3 majorpublic static String format(String formatWikitty, Wikitty w)
format - format as http://download.oracle.com/javase/6/docs/api/java/util/Formatter.html#syntax
except that position is replace with fq field name.w - wikitty to formatpublic static byte[] toBinary(Object value)
value - null and empty return empty byte[]public static BigDecimal toBigDecimal(Object value)
value - null and empty string are casted to '0' value.WikittyException - on NumberFormatException or if value object can't be casted to number.public static boolean toBoolean(Object value)
value - valuepublic static String toString(Object value)
value - value to convertpublic static String toWikitty(Object value)
value - public static <E> List<E> toList(Object value, Class<E> clazz)
E - elements typevalue - value to convertclazz - element classpublic static Number toNumber(Class target, BigDecimal v)
target - la class du nombrev - public static String toStringForExport(FieldType field, Object o)
field - field descriptiono - field valuepublic static Object fromStringForExport(FieldType field, String s)
field - field descriptiono - field valuepublic static String toStringForSearchEngine(FieldType field, Object o)
field - field descriptiono - field valuepublic static Object fromString(FieldType field, String s)
field - field descriptions - string valuepublic static Class<?> getClass(Object value)
value - public static <E extends BusinessEntity> E newInstance(Class<E> clazz)
clazz parameter must be child of WikittyDto or business interface
E - element typeclazz - class of the new instancepublic static <E extends BusinessEntity> E newInstance(Class<E> target, Wikitty w)
target - Business Entity classw - wikitty to usedpublic <E extends BusinessEntity> E newInstance(Class<E> target, BusinessEntityImpl source)
source - business entity sourcetarget - business entity class wantedpublic static <E extends BusinessEntity> List<E> newInstance(Class<E> target, List<Wikitty> wikitties)
target - Business Entity classwikitties - list of wikittiespublic static <E extends BusinessEntity> Set<E> newInstance(Class<E> target, Set<Wikitty> wikitties)
target - Business Entity classwikitties - set of wikitties@Deprecated public static <E extends BusinessEntity> E newInstance(String securityToken, WikittyService wikittyService, Class<E> clazz, Wikitty w)
clazz parameter must be child of Business interface
E - entity typewikittyService - wikitty serviceclazz - class of the new instancew - wikitty object to use internaly for in new instancepublic static Wikitty checkExtensionVersion(String securityToken, WikittyService wikittyService, Wikitty wikitty, BusinessEntityImpl entity)
wikittyService - wikitty - entity - public static <E> E cast(Object obj, Class<E> clazz)
E - element typeobj - object to castclazz - new type of objectpublic static Wikitty clone(Wikitty wikittyToClone, boolean genId) throws CloneNotSupportedException
genId is truewikittyToClone - concernedgenId - true to generate new idCloneNotSupportedException - if exception is thrownpublic static String genSecurityTokenId()
public static String genUID()
public static String getExtensionNameFromFQFieldName(String fqFieldName)
WikittyExtension.extractExtensionName(java.lang.String)public static String getFieldNameFromFQFieldName(String fqFieldName)
WikittyExtension.extractFieldName(java.lang.String)public static String getFQFieldName(String extensionName, String fieldName)
public static String getMetaExtensionNameFromFQMetaExtensionName(String fqFieldName)
public static String getExtensionNameFromFQMetaExtensionName(String fqFieldName)
public static String getFQMetaExtensionName(String metaExtensionName, String extensionName)
public static String getMetaFieldName(String metaExtensionName, String extensionName, String fieldName)
public static List<String> getIds(Iterable<? extends BusinessEntity> entities)
entities - to extract idspublic static <E> E getFieldValueFromFQFieldName(String fqField, BusinessEntity entity)
E - return typefqField - fqField concernedentity - entity concernedpublic static <E> List<E> getFieldValuesFromFQFieldName(String fqField, Iterable<? extends BusinessEntity> entities)
E - return typefqField - fqField concernedentities - entities concernedpublic static String getUniqueLoginName()
public static Wikitty getWikitty(Object o)
o - object to convert@Deprecated public static Wikitty getWikitty(WikittyService service, String securityToken, BusinessEntity entity)
WikittyClient.getWikitty(org.nuiton.wikitty.entities.BusinessEntity)service - securityToken - entity - public static void updateWikitty(Wikitty w, BusinessEntity be)
w - le wikitty a mettre a jour (peut-etre null)be - le business entity utilise pour mettre a jour le wikittypublic static void copyBean(Object source, Object dest) throws Exception
source - dest - Exceptionpublic static Map singletonMap(Object k, Object v)
Collections.singletonMap(K, V) car on ne peut plus changer la valeur
alors qu'on en a besoin dans Wikitty, lorsqu'on converti des donneesk - la clev - la valeurpublic static List singletonList(Object o)
Collections.singletonList(T) car on ne peut plus changer la valeur
alors qu'on en a besoin dans Wikitty, lorsqu'on converti des donneeso - la valeurCopyright © 2009-2013 CodeLutin. All Rights Reserved.