mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Dictionary support for d:locale data type
System aspect sys:localized Interface definition of MultilingualContentService git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4607 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -22,6 +22,7 @@ import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.error.AlfrescoRuntimeException;
|
||||
@@ -241,6 +242,20 @@ public class PropertyValue implements Cloneable, Serializable
|
||||
{
|
||||
return DefaultTypeConverter.INSTANCE.convert(Path.class, value);
|
||||
}
|
||||
},
|
||||
LOCALE
|
||||
{
|
||||
@Override
|
||||
protected ValueType getPersistedType(Serializable value)
|
||||
{
|
||||
return ValueType.STRING;
|
||||
}
|
||||
|
||||
@Override
|
||||
Serializable convert(Serializable value)
|
||||
{
|
||||
return DefaultTypeConverter.INSTANCE.convert(Locale.class, value);
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -343,6 +358,10 @@ public class PropertyValue implements Cloneable, Serializable
|
||||
{
|
||||
return ValueType.PATH;
|
||||
}
|
||||
else if (value instanceof Locale)
|
||||
{
|
||||
return ValueType.LOCALE;
|
||||
}
|
||||
else
|
||||
{
|
||||
// type is not recognised as belonging to any particular slot
|
||||
@@ -373,6 +392,7 @@ public class PropertyValue implements Cloneable, Serializable
|
||||
valueTypesByPropertyType.put(DataTypeDefinition.ASSOC_REF, ValueType.ASSOC_REF);
|
||||
valueTypesByPropertyType.put(DataTypeDefinition.PATH, ValueType.PATH);
|
||||
valueTypesByPropertyType.put(DataTypeDefinition.QNAME, ValueType.QNAME);
|
||||
valueTypesByPropertyType.put(DataTypeDefinition.LOCALE, ValueType.LOCALE);
|
||||
}
|
||||
|
||||
/** the type of the property, prior to serialization persistence */
|
||||
|
@@ -24,6 +24,7 @@ import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -106,6 +107,7 @@ public abstract class BaseNodeServiceTest extends BaseSpringTest
|
||||
public static final QName PROP_QNAME_CONTENT_VALUE = QName.createQName(NAMESPACE, "contentValue");
|
||||
public static final QName PROP_QNAME_PATH_VALUE = QName.createQName(NAMESPACE, "pathValue");
|
||||
public static final QName PROP_QNAME_CATEGORY_VALUE = QName.createQName(NAMESPACE, "categoryValue");
|
||||
public static final QName PROP_QNAME_LOCALE_VALUE = QName.createQName(NAMESPACE, "localeValue");
|
||||
public static final QName PROP_QNAME_NULL_VALUE = QName.createQName(NAMESPACE, "nullValue");
|
||||
public static final QName PROP_QNAME_MULTI_VALUE = QName.createQName(NAMESPACE, "multiValue");
|
||||
public static final QName PROP_QNAME_PROP1 = QName.createQName(NAMESPACE, "prop1");
|
||||
@@ -1014,6 +1016,7 @@ public abstract class BaseNodeServiceTest extends BaseSpringTest
|
||||
properties.put(PROP_QNAME_PATH_VALUE, pathProperty);
|
||||
properties.put(PROP_QNAME_CONTENT_VALUE, new ContentData("url", "text/plain", 88L, "UTF-8"));
|
||||
properties.put(PROP_QNAME_CATEGORY_VALUE, rootNodeRef);
|
||||
properties.put(PROP_QNAME_LOCALE_VALUE, Locale.CHINESE);
|
||||
properties.put(PROP_QNAME_NULL_VALUE, null);
|
||||
properties.put(PROP_QNAME_MULTI_VALUE, listProperty);
|
||||
|
||||
|
@@ -259,6 +259,10 @@
|
||||
<type>d:category</type>
|
||||
<mandatory>true</mandatory>
|
||||
</property>
|
||||
<property name="test:localeValue">
|
||||
<type>d:locale</type>
|
||||
<mandatory>true</mandatory>
|
||||
</property>
|
||||
<property name="test:nullValue">
|
||||
<type>d:text</type>
|
||||
<mandatory>true</mandatory>
|
||||
|
Reference in New Issue
Block a user