[478528] Don't display '=' if no default value is appended

Bug: 478528
diff --git a/org.eclipse.emf.ecoretools.design/src/org/eclipse/emf/ecoretools/design/service/EAttributeServices.java b/org.eclipse.emf.ecoretools.design/src/org/eclipse/emf/ecoretools/design/service/EAttributeServices.java
index 7f337d2..3496a0f 100644
--- a/org.eclipse.emf.ecoretools.design/src/org/eclipse/emf/ecoretools/design/service/EAttributeServices.java
+++ b/org.eclipse.emf.ecoretools.design/src/org/eclipse/emf/ecoretools/design/service/EAttributeServices.java
@@ -145,8 +145,7 @@
             if (dataType instanceof EEnum) {
                 sb.append(" ").append(DEFAULT_VALUE_SEPARATOR).append(" ").append(attr.getDefaultValue());
             } else {
-                sb.append(" ").append(DEFAULT_VALUE_SEPARATOR).append(" ");
-                EFactory factory = dataType.getEPackage() != null ? dataType.getEPackage().getEFactoryInstance() : EcoreFactory.eINSTANCE;
+                EFactory factory = dataType.getEPackage() != null ? dataType.getEPackage().getEFactoryInstance() : EcoreFactory.eINSTANCE;  
                 String serializable = factory.convertToString(dataType, attr.getDefaultValue());
                 if (!"0".equals(serializable)) {
                     // Ignore this default value and consider it as blank
@@ -154,6 +153,7 @@
                     // value. This is the result of the '\u0000' (default value
                     // for
                     // EChar data type) to string.
+                    sb.append(" ").append(DEFAULT_VALUE_SEPARATOR).append(" ");
                     sb.append(serializable);
                 }
             }