* @see org.andromda.metafacades.uml.AttributeFacade#getDefaultValue()
*/
public String getDefaultValue()
{
String defaultValue = super.getDefaultValue();
final ClassifierFacade type = this.getType();
if (type != null)
{
final String fullyQualifiedName = StringUtils.trimToEmpty(type.getFullyQualifiedName());
if ("java.lang.String".equals(fullyQualifiedName))
{
defaultValue = "\"" + defaultValue + "\"";
}
else if (fullyQualifiedName.startsWith("java.lang"))
{
defaultValue = fullyQualifiedName + ".valueOf(" + defaultValue + ")";
}
else if (type.isEnumeration())
{
final String mask = (String)this.getConfiguredProperty(UMLMetafacadeProperties.ENUMERATION_LITERAL_NAME_MASK);
defaultValue = type.getFullyQualifiedName() + '.' + NameMasker.mask(defaultValue, mask);
}
}
return defaultValue;
}