You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2013/09/06 14:53:32 UTC

[3/8] ISIS-509: tidy-up of Util classes.

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetFactory.java
index b40a194..804ddb8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetFactory.java
@@ -21,8 +21,7 @@ package org.apache.isis.core.progmodel.facets.actions.invoke;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManagerAware;
 import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -106,7 +105,7 @@ public class ActionInvocationFacetFactory extends MethodPrefixBasedFacetFactoryA
     private void attachDebugFacetIfActionMethodNamePrefixed(final ProcessMethodContext processMethodContext) {
 
         final Method actionMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName());
+        final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
         if (!capitalizedName.startsWith(DEBUG_PREFIX)) {
             return;
         }
@@ -117,7 +116,7 @@ public class ActionInvocationFacetFactory extends MethodPrefixBasedFacetFactoryA
     private void attachExplorationFacetIfActionMethodNamePrefixed(final ProcessMethodContext processMethodContext) {
 
         final Method actionMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName());
+        final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
         if (!capitalizedName.startsWith(EXPLORATION_PREFIX)) {
             return;
         }
@@ -134,13 +133,13 @@ public class ActionInvocationFacetFactory extends MethodPrefixBasedFacetFactoryA
     private void attachNamedFacetInferredFromMethodName(final ProcessMethodContext processMethodContext) {
 
         final Method method = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.capitalizeName(method.getName());
+        final String capitalizedName = StringExtensions.asCapitalizedName(method.getName());
 
         // this is nasty...
         String name = capitalizedName;
-        name = StringUtils.removePrefix(name, DEBUG_PREFIX);
-        name = StringUtils.removePrefix(name, EXPLORATION_PREFIX);
-        name = NameUtils.naturalName(name);
+        name = StringExtensions.removePrefix(name, DEBUG_PREFIX);
+        name = StringExtensions.removePrefix(name, EXPLORATION_PREFIX);
+        name = StringExtensions.asNaturalName2(name);
 
         final FacetHolder facetedMethod = processMethodContext.getFacetHolder();
         FacetUtil.addFacet(new NamedFacetInferred(name, facetedMethod));

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetViaMethod.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetViaMethod.java
index ee0539c..ceb8c6c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetViaMethod.java
@@ -27,9 +27,9 @@ import java.util.List;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import org.apache.isis.core.commons.lang.ThrowableExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
 import org.apache.isis.core.metamodel.facets.actions.invoke.ActionInvocationFacet;
@@ -118,7 +118,7 @@ public class ActionInvocationFacetViaMethod extends ActionInvocationFacetAbstrac
             if (e.getTargetException() instanceof IllegalStateException) {
                 throw new ReflectiveActionException("IllegalStateException thrown while executing " + method + " " + e.getTargetException().getMessage(), e.getTargetException());
             } else {
-                InvokeUtils.invocationException("Exception executing " + method, e);
+                ThrowableExtensions.throwWithinIsisException(e, "Exception executing " + method);
                 return null;
             }
         } catch (final IllegalAccessException e) {

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/notinservicemenu/method/NotInServiceMenuMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/notinservicemenu/method/NotInServiceMenuMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/notinservicemenu/method/NotInServiceMenuMethodFacetFactory.java
index fdc8cb1..3bdcbc3 100755
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/notinservicemenu/method/NotInServiceMenuMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/notinservicemenu/method/NotInServiceMenuMethodFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.actions.notinservicemenu.method;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -38,7 +38,7 @@ public class NotInServiceMenuMethodFacetFactory extends MethodPrefixBasedFacetFa
     @Override
     public void process(final ProcessMethodContext processMethodContext) {
         final Method getMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(getMethod.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(getMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Method notInServiceMenuMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, 

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java
index 41346ef..10b3d5b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/validate/method/ActionValidationFacetViaValidateMethodFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.actions.validate.method;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -61,7 +61,7 @@ public class ActionValidationFacetViaValidateMethodFacetFactory extends MethodPr
         final Class<?> cls = processMethodContext.getCls();
         final Method actionMethod = processMethodContext.getMethod();
 
-        final String capitalizedName = NameUtils.capitalizeName(actionMethod.getName());
+        final String capitalizedName = StringExtensions.asCapitalizedName(actionMethod.getName());
         final Class<?>[] paramTypes = actionMethod.getParameterTypes();
         final MethodScope onClass = MethodScope.scopeFor(actionMethod);
 

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java
index f03c784..8d87e40 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/clear/CollectionClearFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.collections.clear;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectDirtier;
 import org.apache.isis.core.metamodel.adapter.ObjectDirtierAware;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
@@ -55,7 +55,7 @@ public class CollectionClearFacetFactory extends MethodPrefixBasedFacetFactoryAb
     private void attachCollectionClearFacets(final ProcessMethodContext processMethodContext) {
 
         final Method getMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseName(getMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Method method = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.CLEAR_PREFIX + capitalizedName, void.class, null);

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java
index f428d09..c540ad0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddRemoveAndValidateFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.collections.modify;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectDirtier;
 import org.apache.isis.core.metamodel.adapter.ObjectDirtierAware;
 import org.apache.isis.core.metamodel.exceptions.MetaModelException;
@@ -63,7 +63,7 @@ public class CollectionAddRemoveAndValidateFacetFactory extends MethodPrefixBase
     private Class<?> attachAddToFacetAndRemoveFromFacet(final ProcessMethodContext processMethodContext) {
 
         final Method accessorMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseName(accessorMethod.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseName(accessorMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
 
@@ -132,7 +132,7 @@ public class CollectionAddRemoveAndValidateFacetFactory extends MethodPrefixBase
     private void attachValidateAddToFacetIfValidateAddToMethodIsFound(final ProcessMethodContext processMethodContext, final Class<?> collectionType) {
 
         final Method getMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseName(getMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Class<?>[] paramTypes = MethodFinderUtils.paramTypesOrNull(collectionType);
@@ -152,7 +152,7 @@ public class CollectionAddRemoveAndValidateFacetFactory extends MethodPrefixBase
     private void attachValidateRemoveFacetIfValidateRemoveFromMethodIsFound(final ProcessMethodContext processMethodContext, final Class<?> collectionType) {
 
         final Method getMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseName(getMethod.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseName(getMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Class<?>[] paramTypes = MethodFinderUtils.paramTypesOrNull(collectionType);

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java
index e2a3468..cce8620 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/describedas/staticmethod/DescribedAsFacetViaDescriptionMethodFacetFactory.java
@@ -21,8 +21,8 @@ package org.apache.isis.core.progmodel.facets.members.describedas.staticmethod;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.exceptions.MetaModelException;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -62,7 +62,7 @@ public class DescribedAsFacetViaDescriptionMethodFacetFactory extends MethodPref
     public static void attachDescribedAsFacetIfDescriptionMethodIsFound(final ProcessMethodContext processMethodContext) {
 
         final Method method = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(method.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Method descriptionMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.DESCRIPTION_PREFIX + capitalizedName, String.class, new Class[0]);
@@ -80,7 +80,7 @@ public class DescribedAsFacetViaDescriptionMethodFacetFactory extends MethodPref
     private static String invokeDescriptionMethod(final Method descriptionMethod) {
         String description = null;
         try {
-            description = (String) InvokeUtils.invokeStatic(descriptionMethod);
+            description = (String) MethodExtensions.invokeStatic(descriptionMethod);
         } catch (final ClassCastException ex) {
             // ignore
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisableForSessionFacetViaMethod.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisableForSessionFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisableForSessionFacetViaMethod.java
index ee293fa..19723e6 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisableForSessionFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisableForSessionFacetViaMethod.java
@@ -25,7 +25,7 @@ import java.util.List;
 
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionUtils;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
 import org.apache.isis.core.progmodel.facets.members.disabled.DisableForSessionFacetAbstract;
@@ -71,7 +71,7 @@ public class DisableForSessionFacetViaMethod extends DisableForSessionFacetAbstr
         final Object[] parameters = new Object[len];
         parameters[0] = AuthenticationSessionUtils.createUserMemento(session);
         // TODO: need to change to pick up as non-static rather than static
-        return (String) InvokeUtils.invokeStatic(method, parameters);
+        return (String) MethodExtensions.invokeStatic(method, parameters);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java
index 46b86ba..0d23ee3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/forsession/DisabledFacetViaDisableForSessionMethodFacetFactory.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.progmodel.facets.members.disabled.forsession;
 import java.lang.reflect.Method;
 
 import org.apache.isis.applib.security.UserMemento;
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -56,7 +56,7 @@ public class DisabledFacetViaDisableForSessionMethodFacetFactory extends MethodP
     public static void attachDisableFacetIfDisableMethodForSessionIsFound(final ProcessMethodContext processMethodContext) {
 
         final Method method = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(method.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Method disableForSessionMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.DISABLE_PREFIX + capitalizedName, String.class, new Class[] { UserMemento.class });

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/method/DisabledFacetViaDisableMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/method/DisabledFacetViaDisableMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/method/DisabledFacetViaDisableMethodFacetFactory.java
index 4c70c6b..622dc9a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/method/DisabledFacetViaDisableMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/method/DisabledFacetViaDisableMethodFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.members.disabled.method;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -55,7 +55,7 @@ public class DisabledFacetViaDisableMethodFacetFactory extends MethodPrefixBased
     public static void attachDisabledFacetIfDisabledMethodIsFound(final ProcessMethodContext processMethodContext) {
 
         final Method method = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(method.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Method disableMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.DISABLE_PREFIX + capitalizedName, String.class, method.getParameterTypes());

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java
index 0469a56..6fcef31 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disabled/staticmethod/DisabledFacetViaProtectMethodFacetFactory.java
@@ -21,8 +21,8 @@ package org.apache.isis.core.progmodel.facets.members.disabled.staticmethod;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.exceptions.MetaModelException;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -61,7 +61,7 @@ public class DisabledFacetViaProtectMethodFacetFactory extends MethodPrefixBased
         final Class<?> type = processMethodContext.getCls();
         final Method method = processMethodContext.getMethod();
 
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(method.getName());
 
         final Method protectMethod = MethodFinderUtils.findMethodWithOrWithoutParameters(type, MethodScope.CLASS, MethodPrefixConstants.PROTECT_PREFIX + capitalizedName, boolean.class, paramTypes);
         if (protectMethod == null) {
@@ -82,7 +82,7 @@ public class DisabledFacetViaProtectMethodFacetFactory extends MethodPrefixBased
     private static Boolean invokeProtectMethod(final Method protectMethod) {
         Boolean protectMethodReturnValue = null;
         try {
-            protectMethodReturnValue = (Boolean) InvokeUtils.invokeStatic(protectMethod);
+            protectMethodReturnValue = (Boolean) MethodExtensions.invokeStatic(protectMethod);
         } catch (final ClassCastException ex) {
             // ignore
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java
index 9891c81..7ca18d9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HiddenFacetViaHideForSessionMethodFacetFactory.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.progmodel.facets.members.hidden.forsession;
 import java.lang.reflect.Method;
 
 import org.apache.isis.applib.security.UserMemento;
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -58,7 +58,7 @@ public class HiddenFacetViaHideForSessionMethodFacetFactory extends MethodPrefix
     public static void attachHideFacetIfHideMethodForSessionIsFound(final ProcessMethodContext processMethodContext) {
 
         final Method method = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(method.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Method hideForSessionMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.HIDE_PREFIX + capitalizedName, boolean.class, new Class[] { UserMemento.class });

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HideForSessionFacetViaMethod.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HideForSessionFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HideForSessionFacetViaMethod.java
index 6c55739..c558504 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HideForSessionFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/forsession/HideForSessionFacetViaMethod.java
@@ -25,7 +25,7 @@ import java.util.List;
 
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionUtils;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
 import org.apache.isis.core.progmodel.facets.members.hidden.HideForSessionFacetAbstract;
@@ -71,7 +71,7 @@ public class HideForSessionFacetViaMethod extends HideForSessionFacetAbstract im
         final Object[] parameters = new Object[len];
         parameters[0] = AuthenticationSessionUtils.createUserMemento(session);
         // TODO: need to change to pick up as non-static rather than static
-        final Boolean isHidden = (Boolean) InvokeUtils.invokeStatic(method, parameters);
+        final Boolean isHidden = (Boolean) MethodExtensions.invokeStatic(method, parameters);
         return isHidden.booleanValue() ? "Hidden" : null;
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/method/HiddenFacetViaHideMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/method/HiddenFacetViaHideMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/method/HiddenFacetViaHideMethodFacetFactory.java
index c32e0fd..9e5a0dd 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/method/HiddenFacetViaHideMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/method/HiddenFacetViaHideMethodFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.members.hidden.method;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
@@ -55,7 +55,7 @@ public class HiddenFacetViaHideMethodFacetFactory extends MethodPrefixBasedFacet
     public static void attachHideFacetIfHideMethodIsFound(final ProcessMethodContext processMethodContext) {
 
         final Method getMethod = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(getMethod.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(getMethod.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         Method hideMethod = MethodFinderUtils.findMethod(cls, MethodScope.OBJECT, MethodPrefixConstants.HIDE_PREFIX + capitalizedName, boolean.class, new Class[] {});

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java
index 91d75d2..7cfb928 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hidden/staticmethod/HiddenFacetViaAlwaysHideMethodFacetFactory.java
@@ -21,8 +21,8 @@ package org.apache.isis.core.progmodel.facets.members.hidden.staticmethod;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.exceptions.MetaModelException;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -61,7 +61,7 @@ public class HiddenFacetViaAlwaysHideMethodFacetFactory extends MethodPrefixBase
         final Class<?> type = processMethodContext.getCls();
         final Method method = processMethodContext.getMethod();
 
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(method.getName());
 
         final Method alwaysHideMethod = MethodFinderUtils.findMethod(type, MethodScope.CLASS, MethodPrefixConstants.ALWAYS_HIDE_PREFIX + capitalizedName, boolean.class, new Class[] {});
         if (alwaysHideMethod == null) {
@@ -81,7 +81,7 @@ public class HiddenFacetViaAlwaysHideMethodFacetFactory extends MethodPrefixBase
     private static Boolean invokeAlwaysHideMethod(final Method alwaysHideMethod) {
         Boolean alwaysHideMethodReturnValue = null;
         try {
-            alwaysHideMethodReturnValue = (Boolean) InvokeUtils.invokeStatic(alwaysHideMethod);
+            alwaysHideMethodReturnValue = (Boolean) MethodExtensions.invokeStatic(alwaysHideMethod);
         } catch (final ClassCastException ex) {
             // ignore
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java
index 534aff6..941d850 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/members/named/staticmethod/NamedFacetViaNameMethodFacetFactory.java
@@ -21,8 +21,8 @@ package org.apache.isis.core.progmodel.facets.members.named.staticmethod;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.NameUtils;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.exceptions.MetaModelException;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -64,7 +64,7 @@ public class NamedFacetViaNameMethodFacetFactory extends MethodPrefixBasedFacetF
 
     public static void attachNamedFacetIfNamedMethodIsFound(final ProcessMethodContext processMethodContext) {
         final Method method = processMethodContext.getMethod();
-        final String capitalizedName = NameUtils.javaBaseNameStripAccessorPrefixIfRequired(method.getName());
+        final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(method.getName());
 
         final Class<?> cls = processMethodContext.getCls();
         final Method nameMethod = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.NAME_PREFIX + capitalizedName, String.class, new Class[0]);
@@ -83,7 +83,7 @@ public class NamedFacetViaNameMethodFacetFactory extends MethodPrefixBasedFacetF
     private static String invokeNameMethod(final Method nameMethod) {
         String name = null;
         try {
-            name = (String) InvokeUtils.invokeStatic(nameMethod);
+            name = (String) MethodExtensions.invokeStatic(nameMethod);
         } catch (final ClassCastException e) {
             // ignore
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/choices/enums/EnumFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/choices/enums/EnumFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/choices/enums/EnumFacetFactory.java
index c951b3a..5aed895 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/choices/enums/EnumFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/choices/enums/EnumFacetFactory.java
@@ -19,7 +19,7 @@
 
 package org.apache.isis.core.progmodel.facets.object.choices.enums;
 
-import org.apache.isis.core.commons.lang.CastUtils;
+import org.apache.isis.core.commons.lang.ObjectExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.progmodel.facets.object.value.ValueUsingValueSemanticsProviderFacetFactory;
@@ -44,7 +44,7 @@ public class EnumFacetFactory<T extends Enum<T>> extends ValueUsingValueSemantic
     }
 
     protected Class<T> asT(final Class<?> cls) {
-        return CastUtils.cast(cls);
+        return ObjectExtensions.asT(cls);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetAbstract.java
index 2eec4fc..3bb1078 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetAbstract.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.object.defaults;
 
 import org.apache.isis.applib.adapters.DefaultsProvider;
 import org.apache.isis.applib.adapters.EncoderDecoder;
-import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.runtimecontext.ServicesInjector;
@@ -41,7 +41,7 @@ public abstract class DefaultedFacetAbstract extends FacetAbstract implements De
         this.defaultsProviderClass = DefaultsProviderUtil.defaultsProviderOrNull(candidateEncoderDecoderClass, candidateEncoderDecoderName);
         this.dependencyInjector = dependencyInjector;
         if (isValid()) {
-            final DefaultsProvider<?> defaultsProvider = (DefaultsProvider<?>) ClassUtil.newInstance(defaultsProviderClass, FacetHolder.class, holder);
+            final DefaultsProvider<?> defaultsProvider = (DefaultsProvider<?>) ClassExtensions.newInstance(defaultsProviderClass, FacetHolder.class, holder);
             this.defaultedFacetUsingDefaultsProvider = new DefaultedFacetUsingDefaultsProvider(defaultsProvider, holder, getDependencyInjector());
         } else {
             this.defaultedFacetUsingDefaultsProvider = null;

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultsProviderUtil.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultsProviderUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultsProviderUtil.java
index ac2aa46..3e53ada 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultsProviderUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultsProviderUtil.java
@@ -19,10 +19,12 @@
 
 package org.apache.isis.core.progmodel.facets.object.defaults;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.adapters.DefaultsProvider;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.JavaClassUtils;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
 public final class DefaultsProviderUtil {
@@ -36,12 +38,12 @@ public final class DefaultsProviderUtil {
     public static String defaultsProviderNameFromConfiguration(final Class<?> type, final IsisConfiguration configuration) {
         final String key = DEFAULTS_PROVIDER_NAME_KEY_PREFIX + type.getCanonicalName() + DEFAULTS_PROVIDER_NAME_KEY_SUFFIX;
         final String defaultsProviderName = configuration.getString(key);
-        return !StringUtils.isNullOrEmpty(defaultsProviderName) ? defaultsProviderName : null;
+        return !Strings.isNullOrEmpty(defaultsProviderName) ? defaultsProviderName : null;
     }
 
     public static Class<?> defaultsProviderOrNull(final Class<?> candidateClass, final String classCandidateName) {
-        final Class<?> type = candidateClass != null ? JavaClassUtils.implementingClassOrNull(candidateClass.getName(), DefaultsProvider.class, FacetHolder.class) : null;
-        return type != null ? type : JavaClassUtils.implementingClassOrNull(classCandidateName, DefaultsProvider.class, FacetHolder.class);
+        final Class<?> type = candidateClass != null ? ClassUtil.implementingClassOrNull(candidateClass.getName(), DefaultsProvider.class, FacetHolder.class) : null;
+        return type != null ? type : ClassUtil.implementingClassOrNull(classCandidateName, DefaultsProvider.class, FacetHolder.class);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedAnnotationFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedAnnotationFacetFactory.java
index 04e2be3..ca0fcfc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedAnnotationFacetFactory.java
@@ -19,10 +19,12 @@
 
 package org.apache.isis.core.progmodel.facets.object.defaults.annotation;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.annotation.Defaulted;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationAware;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -60,7 +62,7 @@ public class DefaultedAnnotationFacetFactory extends FacetFactoryAbstract implem
 
         // otherwise, try to create from configuration, if present
         final String providerName = DefaultsProviderUtil.defaultsProviderNameFromConfiguration(cls, getIsisConfiguration());
-        if (!StringUtils.isNullOrEmpty(providerName)) {
+        if (!Strings.isNullOrEmpty(providerName)) {
             final DefaultedFacetFromConfiguration facet = new DefaultedFacetFromConfiguration(providerName, holder, getServicesInjector());
             if (facet.isValid()) {
                 return facet;

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedFacetAnnotation.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedFacetAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedFacetAnnotation.java
index 4087758..0a8cd66 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedFacetAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/annotation/DefaultedFacetAnnotation.java
@@ -19,9 +19,11 @@
 
 package org.apache.isis.core.progmodel.facets.object.defaults.annotation;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.annotation.Defaulted;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.runtimecontext.ServicesInjector;
 import org.apache.isis.core.progmodel.facets.object.defaults.DefaultedFacetAbstract;
@@ -32,7 +34,7 @@ public class DefaultedFacetAnnotation extends DefaultedFacetAbstract {
     private static String providerName(final Class<?> annotatedClass, final IsisConfiguration configuration) {
         final Defaulted annotation = annotatedClass.getAnnotation(Defaulted.class);
         final String providerName = annotation.defaultsProviderName();
-        if (!StringUtils.isNullOrEmpty(providerName)) {
+        if (!Strings.isNullOrEmpty(providerName)) {
             return providerName;
         }
         return DefaultsProviderUtil.defaultsProviderNameFromConfiguration(annotatedClass, configuration);

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/ClearDirtyObjectFacetViaMethod.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/ClearDirtyObjectFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/ClearDirtyObjectFacetViaMethod.java
index 8538faf..3f97714 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/ClearDirtyObjectFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/ClearDirtyObjectFacetViaMethod.java
@@ -23,8 +23,8 @@ import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
 
+import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
 import org.apache.isis.core.progmodel.facets.object.dirty.ClearDirtyObjectFacetAbstract;
@@ -59,6 +59,6 @@ public class ClearDirtyObjectFacetViaMethod extends ClearDirtyObjectFacetAbstrac
 
     @Override
     public void invoke(final ObjectAdapter object) {
-        InvokeUtils.invokeStatic(method);
+        MethodExtensions.invokeStatic(method);
     }
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/IsDirtyObjectFacetViaMethod.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/IsDirtyObjectFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/IsDirtyObjectFacetViaMethod.java
index d734539..355cfeb 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/IsDirtyObjectFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/IsDirtyObjectFacetViaMethod.java
@@ -23,8 +23,8 @@ import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
 
+import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
 import org.apache.isis.core.progmodel.facets.object.dirty.IsDirtyObjectFacetAbstract;
@@ -59,6 +59,6 @@ public class IsDirtyObjectFacetViaMethod extends IsDirtyObjectFacetAbstract impl
 
     @Override
     public boolean invoke(final ObjectAdapter object) {
-        return ((Boolean) InvokeUtils.invokeStatic(method)).booleanValue();
+        return ((Boolean) MethodExtensions.invokeStatic(method)).booleanValue();
     }
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/MarkDirtyObjectFacetViaMethod.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/MarkDirtyObjectFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/MarkDirtyObjectFacetViaMethod.java
index df1957c..f1ee36e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/MarkDirtyObjectFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/dirty/method/MarkDirtyObjectFacetViaMethod.java
@@ -23,8 +23,8 @@ import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
 
+import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.ImperativeFacet;
 import org.apache.isis.core.progmodel.facets.object.dirty.MarkDirtyObjectFacetAbstract;
@@ -55,7 +55,7 @@ public class MarkDirtyObjectFacetViaMethod extends MarkDirtyObjectFacetAbstract
 
     @Override
     public void invoke(final ObjectAdapter object) {
-        InvokeUtils.invokeStatic(method);
+        MethodExtensions.invokeStatic(method);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableAnnotationFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableAnnotationFacetFactory.java
index e983846..93283b3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableAnnotationFacetFactory.java
@@ -19,10 +19,12 @@
 
 package org.apache.isis.core.progmodel.facets.object.encodeable;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.annotation.Encodable;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationAware;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManagerAware;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -66,7 +68,7 @@ public class EncodableAnnotationFacetFactory extends FacetFactoryAbstract implem
 
         // otherwise, try to create from configuration, if present
         final String encoderDecoderName = EncoderDecoderUtil.encoderDecoderNameFromConfiguration(cls, getIsisConfiguration());
-        if (!StringUtils.isNullOrEmpty(encoderDecoderName)) {
+        if (!Strings.isNullOrEmpty(encoderDecoderName)) {
             final EncodableFacetFromConfiguration facet = new EncodableFacetFromConfiguration(encoderDecoderName, holder, adapterManager, servicesInjector);
             if (facet.isValid()) {
                 return facet;

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAbstract.java
index 57d1139..d0cde51 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAbstract.java
@@ -20,7 +20,7 @@
 package org.apache.isis.core.progmodel.facets.object.encodeable;
 
 import org.apache.isis.applib.adapters.EncoderDecoder;
-import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
@@ -45,7 +45,7 @@ public abstract class EncodableFacetAbstract extends FacetAbstract implements En
 
         this.encoderDecoderClass = EncoderDecoderUtil.encoderDecoderOrNull(candidateEncoderDecoderClass, candidateEncoderDecoderName);
         if (isValid()) {
-            final EncoderDecoder<?> encoderDecoder = (EncoderDecoder<?>) ClassUtil.newInstance(encoderDecoderClass, FacetHolder.class, holder);
+            final EncoderDecoder<?> encoderDecoder = (EncoderDecoder<?>) ClassExtensions.newInstance(encoderDecoderClass, FacetHolder.class, holder);
             this.encodeableFacetUsingEncoderDecoder = new EncodableFacetUsingEncoderDecoder(encoderDecoder, holder, getAdapterManager(), getDependencyInjector());
         } else {
             this.encodeableFacetUsingEncoderDecoder = null;

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAnnotation.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAnnotation.java
index 531633b..d7b0e0b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAnnotation.java
@@ -19,9 +19,11 @@
 
 package org.apache.isis.core.progmodel.facets.object.encodeable;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.annotation.Encodable;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.runtimecontext.ServicesInjector;
@@ -31,7 +33,7 @@ public class EncodableFacetAnnotation extends EncodableFacetAbstract {
     private static String encoderDecoderName(final Class<?> annotatedClass, final IsisConfiguration configuration) {
         final Encodable annotation = annotatedClass.getAnnotation(Encodable.class);
         final String encoderDecoderName = annotation.encoderDecoderName();
-        if (!StringUtils.isNullOrEmpty(encoderDecoderName)) {
+        if (!Strings.isNullOrEmpty(encoderDecoderName)) {
             return encoderDecoderName;
         }
         return EncoderDecoderUtil.encoderDecoderNameFromConfiguration(annotatedClass, configuration);

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncoderDecoderUtil.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncoderDecoderUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncoderDecoderUtil.java
index e80d460..82e523a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncoderDecoderUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncoderDecoderUtil.java
@@ -19,10 +19,12 @@
 
 package org.apache.isis.core.progmodel.facets.object.encodeable;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.adapters.EncoderDecoder;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.JavaClassUtils;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
 public final class EncoderDecoderUtil {
@@ -36,12 +38,12 @@ public final class EncoderDecoderUtil {
     static String encoderDecoderNameFromConfiguration(final Class<?> type, final IsisConfiguration configuration) {
         final String key = ENCODER_DECODER_NAME_KEY_PREFIX + type.getCanonicalName() + ENCODER_DECODER_NAME_KEY_SUFFIX;
         final String encoderDecoderName = configuration.getString(key);
-        return !StringUtils.isNullOrEmpty(encoderDecoderName) ? encoderDecoderName : null;
+        return !Strings.isNullOrEmpty(encoderDecoderName) ? encoderDecoderName : null;
     }
 
     public static Class<?> encoderDecoderOrNull(final Class<?> candidateClass, final String classCandidateName) {
-        final Class<?> type = candidateClass != null ? JavaClassUtils.implementingClassOrNull(candidateClass.getName(), EncoderDecoder.class, FacetHolder.class) : null;
-        return type != null ? type : JavaClassUtils.implementingClassOrNull(classCandidateName, EncoderDecoder.class, FacetHolder.class);
+        final Class<?> type = candidateClass != null ? ClassUtil.implementingClassOrNull(candidateClass.getName(), EncoderDecoder.class, FacetHolder.class) : null;
+        return type != null ? type : ClassUtil.implementingClassOrNull(classCandidateName, EncoderDecoder.class, FacetHolder.class);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/ignore/javalang/RemoveSuperclassMethodsFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/ignore/javalang/RemoveSuperclassMethodsFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/ignore/javalang/RemoveSuperclassMethodsFacetFactory.java
index e86f641..364cad2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/ignore/javalang/RemoveSuperclassMethodsFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/ignore/javalang/RemoveSuperclassMethodsFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.object.ignore.javalang;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.JavaClassUtils;
+import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facetapi.MethodRemover;
@@ -50,7 +50,7 @@ public class RemoveSuperclassMethodsFacetFactory extends FacetFactoryAbstract {
             return;
         }
 
-        if (!JavaClassUtils.isJavaClass(type)) {
+        if (!ClassExtensions.isJavaClass(type)) {
             removeSuperclassMethods(type.getSuperclass(), methodRemover);
             return;
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/named/staticmethod/NamedFacetViaSingularNameStaticMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/named/staticmethod/NamedFacetViaSingularNameStaticMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/named/staticmethod/NamedFacetViaSingularNameStaticMethodFacetFactory.java
index d489ba6..f220ac8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/named/staticmethod/NamedFacetViaSingularNameStaticMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/named/staticmethod/NamedFacetViaSingularNameStaticMethodFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.object.named.staticmethod;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -45,7 +45,7 @@ public class NamedFacetViaSingularNameStaticMethodFacetFactory extends MethodPre
 
         final Method method = MethodFinderUtils.findMethod(cls, MethodScope.CLASS, MethodPrefixConstants.SINGULAR_NAME, String.class, NO_PARAMETERS_TYPES);
         if (method != null) {
-            final String name = (String) InvokeUtils.invokeStatic(method);
+            final String name = (String) MethodExtensions.invokeStatic(method);
             processClassContext.removeMethod(method);
             FacetUtil.addFacet(new NamedFacetViaSingularNameStaticMethod(name, facetHolder));
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAbstract.java
index 6f0737d..45b6cfa 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAbstract.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.progmodel.facets.object.parseable;
 import org.apache.isis.applib.adapters.Parser;
 import org.apache.isis.applib.profiles.Localization;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
-import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
@@ -47,7 +47,7 @@ public abstract class ParseableFacetAbstract extends FacetAbstract implements Pa
     }
 
     private ParseableFacetUsingParser createParser(final FacetHolder holder, DeploymentCategory deploymentCategory, final AuthenticationSessionProvider authenticationSessionProvider, final ServicesInjector dependencyInjector, final AdapterManager adapterManager) {
-        final Parser<?> parser = (Parser<?>) ClassUtil.newInstance(parserClass, FacetHolder.class, holder);
+        final Parser<?> parser = (Parser<?>) ClassExtensions.newInstance(parserClass, FacetHolder.class, holder);
         return new ParseableFacetUsingParser(parser, holder, deploymentCategory, authenticationSessionProvider, dependencyInjector, adapterManager);
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAnnotation.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAnnotation.java
index 75a5dc9..e892c78 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAnnotation.java
@@ -19,10 +19,12 @@
 
 package org.apache.isis.core.progmodel.facets.object.parseable;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.annotation.Parseable;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -33,7 +35,7 @@ public class ParseableFacetAnnotation extends ParseableFacetAbstract {
     private static String parserName(final Class<?> annotatedClass, final IsisConfiguration configuration) {
         final Parseable annotation = annotatedClass.getAnnotation(Parseable.class);
         final String parserName = annotation.parserName();
-        if (!StringUtils.isNullOrEmpty(parserName)) {
+        if (!Strings.isNullOrEmpty(parserName)) {
             return parserName;
         }
         return ParserUtil.parserNameFromConfiguration(annotatedClass, configuration);

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFactory.java
index f8892f8..70793dc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFactory.java
@@ -19,12 +19,14 @@
 
 package org.apache.isis.core.progmodel.facets.object.parseable;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.annotation.Parseable;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProviderAware;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationAware;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManagerAware;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
@@ -70,7 +72,7 @@ public class ParseableFacetFactory extends FacetFactoryAbstract implements IsisC
 
         // otherwise, try to create from configuration, if present
         final String parserName = ParserUtil.parserNameFromConfiguration(cls, getIsisConfiguration());
-        if (!StringUtils.isNullOrEmpty(parserName)) {
+        if (!Strings.isNullOrEmpty(parserName)) {
             final ParseableFacetFromConfiguration facet = new ParseableFacetFromConfiguration(parserName, holder, getDeploymentCategory(), authenticationSessionProvider, servicesInjector, adapterManager);
             if (facet.isValid()) {
                 return facet;

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParserUtil.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParserUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParserUtil.java
index 0f06dfd..e180422 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParserUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParserUtil.java
@@ -19,10 +19,12 @@
 
 package org.apache.isis.core.progmodel.facets.object.parseable;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.adapters.Parser;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.JavaClassUtils;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
 public final class ParserUtil {
@@ -36,14 +38,14 @@ public final class ParserUtil {
     static String parserNameFromConfiguration(final Class<?> type, final IsisConfiguration configuration) {
         final String key = PARSER_NAME_KEY_PREFIX + type.getCanonicalName() + PARSER_NAME_KEY_SUFFIX;
         final String parserName = configuration.getString(key);
-        return !StringUtils.isNullOrEmpty(parserName) ? parserName : null;
+        return !Strings.isNullOrEmpty(parserName) ? parserName : null;
     }
 
     @SuppressWarnings("unchecked")
     public static Class<? extends Parser<?>> parserOrNull(final Class<?> candidateClass, final String classCandidateName) {
         @SuppressWarnings("rawtypes")
-        final Class type = candidateClass != null ? JavaClassUtils.implementingClassOrNull(candidateClass.getName(), Parser.class, FacetHolder.class) : null;
-        return type != null ? type : JavaClassUtils.implementingClassOrNull(classCandidateName, Parser.class, FacetHolder.class);
+        final Class type = candidateClass != null ? ClassUtil.implementingClassOrNull(candidateClass.getName(), Parser.class, FacetHolder.class) : null;
+        return type != null ? type : ClassUtil.implementingClassOrNull(classCandidateName, Parser.class, FacetHolder.class);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/plural/staticmethod/PluralMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/plural/staticmethod/PluralMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/plural/staticmethod/PluralMethodFacetFactory.java
index 52760a5..1dc434b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/plural/staticmethod/PluralMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/plural/staticmethod/PluralMethodFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.object.plural.staticmethod;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.metamodel.adapter.util.InvokeUtils;
+import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -46,7 +46,7 @@ public class PluralMethodFacetFactory extends MethodPrefixBasedFacetFactoryAbstr
 
         final Method method = MethodFinderUtils.findMethod(type, MethodScope.CLASS, PLURAL_NAME, String.class, NO_PARAMETERS_TYPES);
         if (method != null) {
-            final String name = (String) InvokeUtils.invokeStatic(method);
+            final String name = (String) MethodExtensions.invokeStatic(method);
             processClassContext.removeMethod(method);
             FacetUtil.addFacet(new PluralFacetViaMethod(name, facetHolder));
         }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/TitleMethodFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/TitleMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/TitleMethodFacetFactory.java
index b2a2a64..9ee6720 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/TitleMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/TitleMethodFacetFactory.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.progmodel.facets.object.title;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.core.commons.lang.JavaClassUtils;
+import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -70,7 +70,7 @@ public class TitleMethodFacetFactory extends MethodPrefixBasedFacetFactoryAbstra
             if (method == null) {
                 return;
             }
-            if (JavaClassUtils.isJavaClass(method.getDeclaringClass())) {
+            if (ClassExtensions.isJavaClass(method.getDeclaringClass())) {
                 return;
             }
             processClassContext.removeMethod(method);

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java
index eb39177..0a67d38 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/title/annotation/TitleFacetViaTitleAnnotation.java
@@ -31,7 +31,7 @@ import org.slf4j.LoggerFactory;
 
 import org.apache.isis.applib.annotation.Title;
 import org.apache.isis.applib.profiles.Localization;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.util.AdapterInvokeUtils;
@@ -134,7 +134,7 @@ public class TitleFacetViaTitleAnnotation extends TitleFacetAbstract {
                     // (mostly for benefit of testing...)
                     title = titlePart.toString().trim();
                 }
-                if(StringUtils.isNullOrEmpty(title)) {
+                if(Strings.isNullOrEmpty(title)) {
                     continue;
                 }
                 stringBuilder.append(component.getPrepend());

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetAbstract.java
index 7eb5ff5..920ebfc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetAbstract.java
@@ -25,7 +25,7 @@ import org.apache.isis.applib.adapters.Parser;
 import org.apache.isis.applib.adapters.ValueSemanticsProvider;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -49,7 +49,7 @@ public abstract class ValueFacetAbstract extends MultipleValueFacetAbstract impl
         if (semanticsProviderClass == null) {
             return null;
         }
-        return (ValueSemanticsProvider<?>) ClassUtil.newInstance(semanticsProviderClass, new Class<?>[] { FacetHolder.class, IsisConfiguration.class, ValueSemanticsProviderContext.class }, new Object[] { holder, configuration, context });
+        return (ValueSemanticsProvider<?>) ClassExtensions.newInstance(semanticsProviderClass, new Class<?>[] { FacetHolder.class, IsisConfiguration.class, ValueSemanticsProviderContext.class }, new Object[] { holder, configuration, context });
     }
 
     // to look after the facets (since MultiTyped)

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderAndFacetAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderAndFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderAndFacetAbstract.java
index 44dde8e..49beb3b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderAndFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderAndFacetAbstract.java
@@ -35,7 +35,7 @@ import org.apache.isis.core.commons.config.ConfigurationConstants;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.exceptions.UnexpectedCallException;
 import org.apache.isis.core.commons.exceptions.UnknownTypeException;
-import org.apache.isis.core.commons.lang.LocaleUtils;
+import org.apache.isis.core.commons.lang.LocaleUtil;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -287,7 +287,7 @@ public abstract class ValueSemanticsProviderAndFacetAbstract<T> extends FacetAbs
     private Locale findLocale() {
         final String localeStr = getConfiguration().getString(ConfigurationConstants.ROOT + "locale");
 
-        final Locale findLocale = LocaleUtils.findLocale(localeStr);
+        final Locale findLocale = LocaleUtil.findLocale(localeStr);
         return findLocale != null ? findLocale : Locale.getDefault();
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderUtil.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderUtil.java
index c67661c..89e1f07 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueSemanticsProviderUtil.java
@@ -19,10 +19,12 @@
 
 package org.apache.isis.core.progmodel.facets.object.value;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.adapters.ValueSemanticsProvider;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.JavaClassUtils;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.ClassUtil;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
 public final class ValueSemanticsProviderUtil {
@@ -36,14 +38,14 @@ public final class ValueSemanticsProviderUtil {
     public static String semanticsProviderNameFromConfiguration(final Class<?> type, final IsisConfiguration configuration) {
         final String key = SEMANTICS_PROVIDER_NAME_KEY_PREFIX + type.getCanonicalName() + SEMANTICS_PROVIDER_NAME_KEY_SUFFIX;
         final String semanticsProviderName = configuration.getString(key);
-        return !StringUtils.isNullOrEmpty(semanticsProviderName) ? semanticsProviderName : null;
+        return !Strings.isNullOrEmpty(semanticsProviderName) ? semanticsProviderName : null;
     }
 
     @SuppressWarnings("unchecked")
     public static Class<? extends ValueSemanticsProvider<?>> valueSemanticsProviderOrNull(final Class<?> candidateClass, final String classCandidateName) {
         @SuppressWarnings("rawtypes")
-        final Class clazz = candidateClass != null ? JavaClassUtils.implementingClassOrNull(candidateClass.getName(), ValueSemanticsProvider.class, FacetHolder.class) : null;
-        return clazz != null ? clazz : JavaClassUtils.implementingClassOrNull(classCandidateName, ValueSemanticsProvider.class, FacetHolder.class);
+        final Class clazz = candidateClass != null ? ClassUtil.implementingClassOrNull(candidateClass.getName(), ValueSemanticsProvider.class, FacetHolder.class) : null;
+        return clazz != null ? clazz : ClassUtil.implementingClassOrNull(classCandidateName, ValueSemanticsProvider.class, FacetHolder.class);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetAnnotation.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetAnnotation.java
index c7e0416..e28d6d3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetAnnotation.java
@@ -19,9 +19,11 @@
 
 package org.apache.isis.core.progmodel.facets.object.value.annotation;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.annotation.Value;
 import org.apache.isis.core.commons.config.IsisConfiguration;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.progmodel.facets.object.value.ValueFacetAbstract;
 import org.apache.isis.core.progmodel.facets.object.value.ValueSemanticsProviderContext;
@@ -32,7 +34,7 @@ public class ValueFacetAnnotation extends ValueFacetAbstract {
     private static String semanticsProviderName(final Class<?> annotatedClass, final IsisConfiguration configuration) {
         final Value annotation = annotatedClass.getAnnotation(Value.class);
         final String semanticsProviderName = annotation.semanticsProviderName();
-        if (!StringUtils.isNullOrEmpty(semanticsProviderName)) {
+        if (!Strings.isNullOrEmpty(semanticsProviderName)) {
             return semanticsProviderName;
         }
         return ValueSemanticsProviderUtil.semanticsProviderNameFromConfiguration(annotatedClass, configuration);

http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetFactory.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetFactory.java
index 6c62b20..c1b5499 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/annotation/ValueFacetFactory.java
@@ -19,6 +19,8 @@
 
 package org.apache.isis.core.progmodel.facets.object.value.annotation;
 
+import com.google.common.base.Strings;
+
 import org.apache.isis.applib.adapters.EncoderDecoder;
 import org.apache.isis.applib.adapters.Parser;
 import org.apache.isis.applib.annotation.Value;
@@ -26,7 +28,7 @@ import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProviderAware;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationAware;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManagerAware;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
@@ -110,7 +112,7 @@ public class ValueFacetFactory extends FacetFactoryAbstract implements IsisConfi
 
         // otherwise, try to create from configuration, if present
         final String semanticsProviderName = ValueSemanticsProviderUtil.semanticsProviderNameFromConfiguration(cls, configuration);
-        if (!StringUtils.isNullOrEmpty(semanticsProviderName)) {
+        if (!Strings.isNullOrEmpty(semanticsProviderName)) {
             final ValueFacetFromConfiguration facet = new ValueFacetFromConfiguration(semanticsProviderName, holder, getIsisConfiguration(), createValueSemanticsProviderContext());
             if (facet.isValid()) {
                 return facet;