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:36 UTC
[7/8] ISIS-509: tidy-up of Util classes.
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ClassLoaders.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ClassLoaders.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ClassLoaders.java
deleted file mode 100644
index 1af6571..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ClassLoaders.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-
-import com.google.common.collect.Maps;
-
-import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-
-public final class ClassLoaders {
-
- private static Map<String, Class<?>> primitives = Maps.newHashMap();
-
- static {
- @SuppressWarnings({ "rawtypes" })
- final List<Class> primitiveClasses = Arrays.<Class> asList(boolean.class, byte.class, short.class, int.class, long.class, float.class, double.class, char.class);
- for (final Class<?> cls : primitiveClasses) {
- primitives.put(cls.getName(), cls);
- }
- }
-
- public static Class<?> forName(final ObjectSpecification objectSpec) {
- final String fullName = objectSpec.getFullIdentifier();
- return forName(fullName);
- }
-
- public static Class<?> forName(final String fullName) {
- final Class<?> primitiveCls = primitives.get(fullName);
- if (primitiveCls != null) {
- return primitiveCls;
- }
- try {
- return Thread.currentThread().getContextClassLoader().loadClass(fullName);
- } catch (final ClassNotFoundException e) {
- throw new RuntimeException(e);
- }
- }
-
- public static Class<?> forNameElseNull(final String fullName) {
- if (fullName == null) {
- return null;
- }
- try {
- return Thread.currentThread().getContextClassLoader().loadClass(fullName);
- } catch (final ClassNotFoundException e) {
- return null;
- }
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Classes.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Classes.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Classes.java
deleted file mode 100644
index 91763ca..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Classes.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-import org.hamcrest.BaseMatcher;
-import org.hamcrest.Description;
-import org.hamcrest.Matcher;
-
-public final class Classes {
-
- public static Matcher<?> isSubclassOf(final Class<?> superClass) {
- return new BaseMatcher<Object>() {
- @Override
- public boolean matches(final Object item) {
- final Class<?> cls = (Class<?>) item;
- return superClass.isAssignableFrom(cls);
- }
-
- @Override
- public void describeTo(final Description description) {
- description.appendText("is subclass of " + superClass.getName());
- }
- };
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Generics.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Generics.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Generics.java
deleted file mode 100644
index 0c940ae..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Generics.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-public final class Generics {
-
- private Generics() {
- }
-
- public static <T> T coalesce(final T... candidates) {
- for (final T t : candidates) {
- if (t != null) {
- return t;
- }
- }
- return null;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/MementoFunctions.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/MementoFunctions.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/MementoFunctions.java
new file mode 100644
index 0000000..2358e0c
--- /dev/null
+++ b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/MementoFunctions.java
@@ -0,0 +1,110 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.isis.viewer.wicket.model.util;
+
+import com.google.common.base.Function;
+
+import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
+import org.apache.isis.core.metamodel.spec.ObjectSpecId;
+import org.apache.isis.core.metamodel.spec.ObjectSpecification;
+import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
+import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
+import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
+import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
+import org.apache.isis.core.runtime.system.context.IsisContext;
+import org.apache.isis.viewer.wicket.model.mementos.ActionMemento;
+import org.apache.isis.viewer.wicket.model.mementos.ActionParameterMemento;
+import org.apache.isis.viewer.wicket.model.mementos.CollectionMemento;
+import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
+import org.apache.isis.viewer.wicket.model.mementos.PropertyMemento;
+
+public final class MementoFunctions {
+
+ private MementoFunctions() {
+ }
+
+ public static Function<ObjectSpecification, ObjectSpecId> fromSpec() {
+ return new Function<ObjectSpecification, ObjectSpecId>() {
+
+ @Override
+ public ObjectSpecId apply(final ObjectSpecification from) {
+ return from.getSpecId();
+ }
+ };
+ }
+
+ public static Function<OneToOneAssociation, PropertyMemento> fromProperty() {
+ return new Function<OneToOneAssociation, PropertyMemento>() {
+ @Override
+ public PropertyMemento apply(final OneToOneAssociation from) {
+ return new PropertyMemento(from);
+ }
+ };
+ }
+
+ public static Function<OneToManyAssociation, CollectionMemento> fromCollection() {
+ return new Function<OneToManyAssociation, CollectionMemento>() {
+ @Override
+ public CollectionMemento apply(final OneToManyAssociation from) {
+ return new CollectionMemento(from);
+ }
+ };
+ }
+
+ public static Function<ObjectAction, ActionMemento> fromAction() {
+ return new Function<ObjectAction, ActionMemento>() {
+ @Override
+ public ActionMemento apply(final ObjectAction from) {
+ return new ActionMemento(from);
+ }
+ };
+ }
+
+ public static Function<ObjectActionParameter, ActionParameterMemento> fromActionParameter() {
+ return new Function<ObjectActionParameter, ActionParameterMemento>() {
+ @Override
+ public ActionParameterMemento apply(final ObjectActionParameter from) {
+ return new ActionParameterMemento(from);
+ }
+ };
+ }
+
+ public static Function<Object, ObjectAdapterMemento> fromPojo(final AdapterManager adapterManager) {
+ return new Function<Object, ObjectAdapterMemento>() {
+ @Override
+ public ObjectAdapterMemento apply(final Object pojo) {
+ final ObjectAdapter adapter = adapterManager.adapterFor(pojo);
+ return ObjectAdapterMemento.createOrNull(adapter);
+ }
+ };
+ }
+
+ public static Function<ObjectAdapter, ObjectAdapterMemento> fromAdapter() {
+ return new Function<ObjectAdapter, ObjectAdapterMemento>() {
+ @Override
+ public ObjectAdapterMemento apply(final ObjectAdapter adapter) {
+ return ObjectAdapterMemento.createOrNull(adapter);
+ }
+ };
+ }
+
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Mementos.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Mementos.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Mementos.java
deleted file mode 100644
index 4f60c4f..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Mementos.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-import com.google.common.base.Function;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
-import org.apache.isis.core.metamodel.spec.ObjectSpecId;
-import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
-import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
-import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
-import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.viewer.wicket.model.mementos.ActionMemento;
-import org.apache.isis.viewer.wicket.model.mementos.ActionParameterMemento;
-import org.apache.isis.viewer.wicket.model.mementos.CollectionMemento;
-import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
-import org.apache.isis.viewer.wicket.model.mementos.PropertyMemento;
-
-public final class Mementos {
-
- private Mementos() {
- }
-
- public static Function<ObjectSpecification, ObjectSpecId> fromSpec() {
- return new Function<ObjectSpecification, ObjectSpecId>() {
-
- @Override
- public ObjectSpecId apply(final ObjectSpecification from) {
- return from.getSpecId();
- }
- };
- }
-
- public static Function<OneToOneAssociation, PropertyMemento> fromProperty() {
- return new Function<OneToOneAssociation, PropertyMemento>() {
- @Override
- public PropertyMemento apply(final OneToOneAssociation from) {
- return new PropertyMemento(from);
- }
- };
- }
-
- public static Function<OneToManyAssociation, CollectionMemento> fromCollection() {
- return new Function<OneToManyAssociation, CollectionMemento>() {
- @Override
- public CollectionMemento apply(final OneToManyAssociation from) {
- return new CollectionMemento(from);
- }
- };
- }
-
- public static Function<ObjectAction, ActionMemento> fromAction() {
- return new Function<ObjectAction, ActionMemento>() {
- @Override
- public ActionMemento apply(final ObjectAction from) {
- return new ActionMemento(from);
- }
- };
- }
-
- public static Function<ObjectActionParameter, ActionParameterMemento> fromActionParameter() {
- return new Function<ObjectActionParameter, ActionParameterMemento>() {
- @Override
- public ActionParameterMemento apply(final ObjectActionParameter from) {
- return new ActionParameterMemento(from);
- }
- };
- }
-
- public static Function<Object, ObjectAdapterMemento> fromPojo() {
- return new Function<Object, ObjectAdapterMemento>() {
- @Override
- public ObjectAdapterMemento apply(final Object pojo) {
- final ObjectAdapter adapter = getAdapterManager().adapterFor(pojo);
- return ObjectAdapterMemento.createOrNull(adapter);
- }
- };
- }
-
- public static Function<ObjectAdapter, ObjectAdapterMemento> fromAdapter() {
- return new Function<ObjectAdapter, ObjectAdapterMemento>() {
- @Override
- public ObjectAdapterMemento apply(final ObjectAdapter adapter) {
- return ObjectAdapterMemento.createOrNull(adapter);
- }
- };
- }
-
- private static AdapterManager getAdapterManager() {
- return IsisContext.getPersistenceSession().getAdapterManager();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectActionParameters.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectActionParameters.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectActionParameters.java
deleted file mode 100644
index eb14171..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectActionParameters.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
-
-public final class ObjectActionParameters {
-
- private ObjectActionParameters() {
- }
-
- public static boolean compatibleWith(final ObjectAdapter contextAdapter, final ObjectActionParameter actionParam) {
- return contextAdapter != null && contextAdapter.getSpecification().isOfType(actionParam.getSpecification());
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapterFunctions.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapterFunctions.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapterFunctions.java
new file mode 100644
index 0000000..f764faf
--- /dev/null
+++ b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapterFunctions.java
@@ -0,0 +1,74 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.isis.viewer.wicket.model.util;
+
+import com.google.common.base.Function;
+
+import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
+import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
+import org.apache.isis.core.metamodel.adapter.oid.Oid;
+import org.apache.isis.core.runtime.system.context.IsisContext;
+import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
+import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
+
+public final class ObjectAdapterFunctions {
+
+ private ObjectAdapterFunctions() {
+ }
+
+ public static Function<Object, ObjectAdapter> fromPojo(final AdapterManager adapterManager) {
+ return new Function<Object, ObjectAdapter>() {
+ @Override
+ public ObjectAdapter apply(final Object pojo) {
+ return adapterManager.adapterFor(pojo);
+ }
+ };
+ }
+
+ public static Function<ObjectAdapterMemento, ObjectAdapter> fromMemento() {
+ return new Function<ObjectAdapterMemento, ObjectAdapter>() {
+ @Override
+ public ObjectAdapter apply(final ObjectAdapterMemento from) {
+ return from.getObjectAdapter(ConcurrencyChecking.NO_CHECK);
+ }
+ };
+ }
+
+ public static Function<ObjectAdapter, ObjectAdapterMemento> toMemento() {
+ return new Function<ObjectAdapter, ObjectAdapterMemento>() {
+
+ @Override
+ public ObjectAdapterMemento apply(ObjectAdapter from) {
+ return ObjectAdapterMemento.createOrNull(from);
+ }
+
+ };
+ }
+
+ private static AdapterManager getAdapterManager() {
+ return getPersistenceSession().getAdapterManager();
+ }
+
+ private static PersistenceSession getPersistenceSession() {
+ return IsisContext.getPersistenceSession();
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapters.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapters.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapters.java
deleted file mode 100644
index 92238e7..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/ObjectAdapters.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-import com.google.common.base.Function;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
-import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
-import org.apache.isis.core.metamodel.adapter.oid.Oid;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
-import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
-
-public final class ObjectAdapters {
-
- private ObjectAdapters() {
- }
-
- public static Function<Object, ObjectAdapter> fromPojo() {
- return new Function<Object, ObjectAdapter>() {
- @Override
- public ObjectAdapter apply(final Object pojo) {
- return getAdapterManager().adapterFor(pojo);
- }
- };
- }
-
- public static Function<ObjectAdapterMemento, ObjectAdapter> fromMemento() {
- return new Function<ObjectAdapterMemento, ObjectAdapter>() {
- @Override
- public ObjectAdapter apply(final ObjectAdapterMemento from) {
- return from.getObjectAdapter(ConcurrencyChecking.NO_CHECK);
- }
- };
- }
-
- public static Function<ObjectAdapter, ObjectAdapterMemento> toMemento() {
- return new Function<ObjectAdapter, ObjectAdapterMemento>() {
-
- @Override
- public ObjectAdapterMemento apply(ObjectAdapter from) {
- return ObjectAdapterMemento.createOrNull(from);
- }
-
- };
- }
-
- public static Function<Oid, ObjectAdapter> fromOid() {
- return new Function<Oid, ObjectAdapter>() {
- @Override
- public ObjectAdapter apply(final Oid from) {
- final ObjectAdapter adapterFor = getAdapterManager().getAdapterFor(from);
- return adapterFor;
- }
- };
- }
-
- private static AdapterManager getAdapterManager() {
- return getPersistenceSession().getAdapterManager();
- }
-
- private static PersistenceSession getPersistenceSession() {
- return IsisContext.getPersistenceSession();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/OidMatchers.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/OidMatchers.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/OidMatchers.java
new file mode 100644
index 0000000..ed77526
--- /dev/null
+++ b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/OidMatchers.java
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.isis.viewer.wicket.model.util;
+
+import org.hamcrest.Description;
+import org.hamcrest.Matcher;
+import org.hamcrest.TypeSafeMatcher;
+
+import org.apache.isis.core.metamodel.adapter.oid.Oid;
+
+public final class OidMatchers {
+
+ private OidMatchers() {
+ }
+
+ public static Matcher<Oid> isTransient() {
+ return new TypeSafeMatcher<Oid>() {
+
+ @Override
+ public boolean matchesSafely(final Oid item) {
+ return item.isTransient();
+ }
+
+ @Override
+ public void describeTo(final Description description) {
+ description.appendText("is transient");
+ }
+ };
+ }
+
+ public static Matcher<Oid> isPersistent() {
+ return new TypeSafeMatcher<Oid>() {
+
+ @Override
+ public boolean matchesSafely(final Oid item) {
+ return !item.isTransient();
+ }
+
+ @Override
+ public void describeTo(final Description description) {
+ description.appendText("is persistent");
+ }
+ };
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Oids.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Oids.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Oids.java
deleted file mode 100644
index 84cb5bd..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Oids.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-import org.hamcrest.Description;
-import org.hamcrest.Matcher;
-import org.hamcrest.TypeSafeMatcher;
-
-import org.apache.isis.core.metamodel.adapter.oid.Oid;
-
-public final class Oids {
-
- private Oids() {
- }
-
- public static Matcher<Oid> isTransient() {
- return new TypeSafeMatcher<Oid>() {
-
- @Override
- public boolean matchesSafely(final Oid item) {
- return item.isTransient();
- }
-
- @Override
- public void describeTo(final Description description) {
- description.appendText("is transient");
- }
- };
- }
-
- public static Matcher<Oid> isPersistent() {
- return new TypeSafeMatcher<Oid>() {
-
- @Override
- public boolean matchesSafely(final Oid item) {
- return !item.isTransient();
- }
-
- @Override
- public void describeTo(final Description description) {
- description.appendText("is persistent");
- }
- };
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Pojos.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Pojos.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Pojos.java
deleted file mode 100644
index 9b9eb97..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Pojos.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-import com.google.common.base.Function;
-
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
-import org.apache.isis.core.metamodel.adapter.oid.Oid;
-import org.apache.isis.core.runtime.system.context.IsisContext;
-
-public final class Pojos {
-
- private Pojos() {
- }
-
- public static Function<Object, Oid> toOid() {
- return new Function<Object, Oid>() {
- @Override
- public Oid apply(final Object pojo) {
- final ObjectAdapter adapter = getAdapterManager().adapterFor(pojo);
- return adapter.getOid();
- }
-
- };
- }
-
- public static Function<ObjectAdapter, Object> forAdapter() {
- return new Function<ObjectAdapter, Object>() {
-
- @Override
- public Object apply(final ObjectAdapter from) {
- return from.getObject();
- }
- };
- }
-
- private static AdapterManager getAdapterManager() {
- return IsisContext.getPersistenceSession().getAdapterManager();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Strings.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Strings.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Strings.java
deleted file mode 100644
index 365818c..0000000
--- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/util/Strings.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.viewer.wicket.model.util;
-
-public final class Strings {
-
- private Strings() {
- }
-
- public static String toCamelCase(final String name) {
- final String nameLower = name.toLowerCase();
- final StringBuilder buf = new StringBuilder();
- boolean capitalizeNext = false;
- for (int i = 0; i < nameLower.length(); i++) {
- final char ch = nameLower.charAt(i);
- if (ch == '_') {
- capitalizeNext = true;
- } else {
- if (capitalizeNext) {
- buf.append(Character.toUpperCase(ch));
- } else {
- buf.append(ch);
- }
- capitalizeNext = false;
- }
- }
- return buf.toString();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentType.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentType.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentType.java
index e90ed80..d06d2b8 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentType.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/ComponentType.java
@@ -21,7 +21,7 @@ package org.apache.isis.viewer.wicket.ui;
import org.apache.wicket.Component;
-import org.apache.isis.viewer.wicket.model.util.Strings;
+import org.apache.isis.core.commons.lang.StringExtensions;
/**
* Enumerates the different types of {@link Component}s that can be constructed
@@ -157,7 +157,7 @@ public enum ComponentType {
}
public String getWicketId() {
- return Strings.toCamelCase(name());
+ return StringExtensions.toCamelCase(name());
}
public static ComponentType lookup(final String id) {
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
index 0f16104..d78a290 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
@@ -35,7 +35,7 @@ import com.google.common.base.CharMatcher;
import com.google.common.base.Splitter;
import com.google.common.collect.Lists;
-import org.apache.isis.core.commons.lang.IoUtils;
+import org.apache.isis.core.commons.lang.CloseableExtensions;
import org.apache.isis.viewer.wicket.model.models.ModelAbstract;
public class JarManifestModel extends ModelAbstract<JarManifestModel> {
@@ -70,7 +70,7 @@ public class JarManifestModel extends ModelAbstract<JarManifestModel> {
} catch (Exception ex) {
// ignore
} finally {
- IoUtils.closeSafely(metaInfManifestIs);
+ CloseableExtensions.closeSafely(metaInfManifestIs);
}
Enumeration<?> resEnum;
@@ -95,7 +95,7 @@ public class JarManifestModel extends ModelAbstract<JarManifestModel> {
} catch(Exception e3) {
// ignore
} finally {
- IoUtils.closeSafely(is);
+ CloseableExtensions.closeSafely(is);
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
index b2aa843..6e23883 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
@@ -38,7 +38,7 @@ import org.apache.wicket.markup.repeater.RepeatingView;
import org.apache.wicket.model.IModel;
import org.apache.isis.core.commons.ensure.Ensure;
-import org.apache.isis.core.commons.lang.CastUtils;
+import org.apache.isis.core.commons.lang.ObjectExtensions;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
@@ -48,7 +48,7 @@ import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
import org.apache.isis.viewer.wicket.model.models.ActionExecutor;
import org.apache.isis.viewer.wicket.model.models.ActionModel;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
-import org.apache.isis.viewer.wicket.model.util.Mementos;
+import org.apache.isis.viewer.wicket.model.util.MementoFunctions;
import org.apache.isis.viewer.wicket.ui.ComponentType;
import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarModelSubscriber;
import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
@@ -153,7 +153,7 @@ public class ActionParametersFormPanel extends PanelAbstract<ActionModel> {
private List<ActionParameterMemento> buildParameterMementos(final List<ObjectActionParameter> parameters) {
- final List<ActionParameterMemento> parameterMementoList = Lists.transform(parameters, Mementos.fromActionParameter());
+ final List<ActionParameterMemento> parameterMementoList = Lists.transform(parameters, MementoFunctions.fromActionParameter());
// we copy into a new array list otherwise we get lazy evaluation =
// reference to a non-serializable object
return Lists.newArrayList(parameterMementoList);
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
index f726d9c..bdc28ae 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/additionallinks/AdditionalLinksPanel.java
@@ -28,7 +28,7 @@ import org.apache.wicket.markup.html.link.AbstractLink;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
import org.apache.isis.viewer.wicket.model.links.ListOfLinksModel;
import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
@@ -85,7 +85,7 @@ public class AdditionalLinksPanel extends PanelAbstract<ListOfLinksModel> {
if(cssClass != null) {
item.add(new CssClassAppender(cssClass));
}
- viewTitleLabel.add(new CssClassAppender(StringUtils.toLowerDashed(linkAndLabel.getLabel())));
+ viewTitleLabel.add(new CssClassAppender(StringExtensions.asLowerDashed(linkAndLabel.getLabel())));
link.addOrReplace(viewTitleLabel);
item.addOrReplace(link);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
index 9593147..fc266c5 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/header/EntityHeaderPanel.java
@@ -21,6 +21,8 @@ package org.apache.isis.viewer.wicket.ui.components.entity.header;
import java.util.List;
+import com.google.common.base.Function;
+import com.google.common.base.Functions;
import com.google.common.base.Strings;
import com.google.common.collect.Lists;
import com.google.inject.Inject;
@@ -30,6 +32,8 @@ import org.apache.wicket.Component;
import org.apache.isis.applib.annotation.Where;
import org.apache.isis.applib.filter.Filter;
import org.apache.isis.applib.filter.Filters;
+import org.apache.isis.core.commons.lang.StringFunctions;
+import org.apache.isis.core.commons.lang.StringExtensions;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet;
import org.apache.isis.core.metamodel.spec.ActionType;
@@ -140,8 +144,8 @@ public class EntityHeaderPanel extends PanelAbstract<EntityModel> implements Act
private Filter<ObjectAction> memberOrderNameNotAssociation(final ObjectSpecification adapterSpec) {
final List<ObjectAssociation> associations = adapterSpec.getAssociations(Contributed.INCLUDED);
- final List<String> associationNames = Lists.transform(associations, ObjectAssociations.toName());
- final List<String> associationIds = Lists.transform(associations, ObjectAssociations.toId());
+ final List<String> associationNames = Lists.transform(associations, Functions.compose(StringFunctions.toLowerCase(), ObjectAssociation.Functions.toName()));
+ final List<String> associationIds = Lists.transform(associations, Functions.compose(StringFunctions.toLowerCase(), ObjectAssociation.Functions.toId()));
return new Filter<ObjectAction>() {
@@ -151,12 +155,12 @@ public class EntityHeaderPanel extends PanelAbstract<EntityModel> implements Act
if(memberOrderFacet == null || Strings.isNullOrEmpty(memberOrderFacet.name())) {
return true;
}
- String memberOrderName = memberOrderFacet.name();
+ String memberOrderName = StringFunctions.toLowerCase().apply(memberOrderFacet.name());
return !associationNames.contains(memberOrderName) && !associationIds.contains(memberOrderName);
}
};
}
-
+
protected Filter<ObjectAction> dynamicallyVisibleFor(final ObjectAdapter adapter) {
return ObjectAction.Filters.dynamicallyVisible(getAuthenticationSession(), adapter, Where.ANYWHERE);
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
index 7d1f233..9553548 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/isisapplib/IsisBlobOrClobPanelAbstract.java
@@ -52,7 +52,7 @@ import org.slf4j.LoggerFactory;
import org.apache.isis.applib.value.Blob;
import org.apache.isis.applib.value.NamedWithMimeType;
-import org.apache.isis.core.commons.lang.IoUtils;
+import org.apache.isis.core.commons.lang.CloseableExtensions;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
@@ -157,7 +157,7 @@ public abstract class IsisBlobOrClobPanelAbstract<T extends NamedWithMimeType> e
} catch (IOException ex) {
return null;
} finally {
- IoUtils.closeSafely(bais);
+ CloseableExtensions.closeSafely(bais);
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuPanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuPanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuPanel.java
index fe0b0e8..b1a22b3 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuPanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuPanel.java
@@ -26,7 +26,7 @@ import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.repeater.RepeatingView;
import org.apache.wicket.model.util.ListModel;
-import org.apache.isis.viewer.wicket.model.util.Strings;
+import org.apache.isis.core.commons.lang.StringExtensions;
import org.apache.isis.viewer.wicket.ui.ComponentType;
import org.apache.isis.viewer.wicket.ui.panels.PanelAbstract;
import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
@@ -57,7 +57,7 @@ public class CssMenuPanel extends PanelAbstract<CssMenuPanel.MyModel> {
};
@Override
public String toString() {
- return Strings.toCamelCase(name());
+ return StringExtensions.toCamelCase(name());
}
public String getAppendValue() {
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
index c5dd2cf..51dac92 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitylink/EntityLinkSelect2Panel.java
@@ -48,7 +48,7 @@ import org.apache.isis.viewer.wicket.model.models.EntityModel;
import org.apache.isis.viewer.wicket.model.models.EntityModel.RenderingHint;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
import org.apache.isis.viewer.wicket.model.models.ScalarModelWithPending.Util;
-import org.apache.isis.viewer.wicket.model.util.Mementos;
+import org.apache.isis.viewer.wicket.model.util.MementoFunctions;
import org.apache.isis.viewer.wicket.ui.ComponentFactory;
import org.apache.isis.viewer.wicket.ui.ComponentType;
import org.apache.isis.viewer.wicket.ui.components.actions.ActionInvokeHandler;
@@ -224,7 +224,7 @@ public class EntityLinkSelect2Panel extends FormComponentPanelAbstract<ObjectAda
final ObjectSpecification typeOfSpecification = entityModel.getTypeOfSpecification();
final AutoCompleteFacet autoCompleteFacet = typeOfSpecification.getFacet(AutoCompleteFacet.class);
final List<ObjectAdapter> results = autoCompleteFacet.execute(term);
- return Lists.transform(results, Mementos.fromAdapter());
+ return Lists.transform(results, MementoFunctions.fromAdapter());
}
};
@@ -248,7 +248,7 @@ public class EntityLinkSelect2Panel extends FormComponentPanelAbstract<ObjectAda
return Collections.emptyList();
}
// take a copy otherwise is only lazily evaluated
- return Lists.newArrayList(Lists.transform(autoCompleteChoices, Mementos.fromAdapter()));
+ return Lists.newArrayList(Lists.transform(autoCompleteChoices, MementoFunctions.fromAdapter()));
}
};
@@ -266,7 +266,7 @@ public class EntityLinkSelect2Panel extends FormComponentPanelAbstract<ObjectAda
return Collections.emptyList();
}
// take a copy otherwise is only lazily evaluated
- return Lists.newArrayList(Lists.transform(choices, Mementos.fromAdapter()));
+ return Lists.newArrayList(Lists.transform(choices, MementoFunctions.fromAdapter()));
}
private void syncLinkWithInput(final ObjectAdapter adapter) {
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
index c161e23..c4d2720 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/entitysimplelink/EntityLinkSimplePanel.java
@@ -52,7 +52,7 @@ import org.apache.isis.viewer.wicket.model.models.EntityModel.RenderingHint;
import org.apache.isis.viewer.wicket.model.models.ScalarModelWithPending.Util;
import org.apache.isis.viewer.wicket.model.models.ModelAbstract;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
-import org.apache.isis.viewer.wicket.model.util.Mementos;
+import org.apache.isis.viewer.wicket.model.util.MementoFunctions;
import org.apache.isis.viewer.wicket.ui.ComponentFactory;
import org.apache.isis.viewer.wicket.ui.ComponentType;
import org.apache.isis.viewer.wicket.ui.components.actions.ActionInvokeHandler;
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ValueChoicesSelect2Panel.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ValueChoicesSelect2Panel.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ValueChoicesSelect2Panel.java
index 693b607..8a6b8ce 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ValueChoicesSelect2Panel.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/valuechoices/ValueChoicesSelect2Panel.java
@@ -43,7 +43,7 @@ import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
import org.apache.isis.viewer.wicket.model.models.ModelAbstract;
import org.apache.isis.viewer.wicket.model.models.ScalarModel;
import org.apache.isis.viewer.wicket.model.models.ScalarModelWithPending;
-import org.apache.isis.viewer.wicket.model.util.Mementos;
+import org.apache.isis.viewer.wicket.model.util.MementoFunctions;
import org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
import org.apache.isis.viewer.wicket.ui.components.widgets.ObjectAdapterMementoProviderAbstract;
import org.apache.isis.viewer.wicket.ui.util.CssClassAppender;
@@ -93,7 +93,7 @@ public class ValueChoicesSelect2Panel extends ScalarPanelAbstract implements Sca
final List<ObjectAdapter> choices = scalarModel.getChoices(argumentsIfAvailable);
// take a copy otherwise is only lazily evaluated
- return Lists.newArrayList(Lists.transform(choices, Mementos.fromAdapter()));
+ return Lists.newArrayList(Lists.transform(choices, MementoFunctions.fromAdapter()));
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/errors/JGrowlBehaviour.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/errors/JGrowlBehaviour.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/errors/JGrowlBehaviour.java
index 2c1505a..21ec7c8 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/errors/JGrowlBehaviour.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/errors/JGrowlBehaviour.java
@@ -18,6 +18,8 @@
*/
package org.apache.isis.viewer.wicket.ui.errors;
+import com.google.common.base.Strings;
+
import org.apache.wicket.Component;
import org.apache.wicket.ajax.AbstractDefaultAjaxBehavior;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -26,7 +28,7 @@ import org.apache.wicket.markup.head.OnDomReadyHeaderItem;
import org.apache.isis.applib.ApplicationException;
import org.apache.isis.core.commons.authentication.MessageBroker;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
import org.apache.isis.core.runtime.system.context.IsisContext;
@@ -49,7 +51,7 @@ public class JGrowlBehaviour extends AbstractDefaultAjaxBehavior {
@Override
protected void respond(AjaxRequestTarget target) {
String feedbackMsg = JGrowlUtil.asJGrowlCalls(IsisContext.getMessageBroker());
- if(!StringUtils.isNullOrEmpty(feedbackMsg)) {
+ if(!Strings.isNullOrEmpty(feedbackMsg)) {
target.appendJavaScript(feedbackMsg);
}
}
@@ -58,7 +60,7 @@ public class JGrowlBehaviour extends AbstractDefaultAjaxBehavior {
public void renderHead(Component component, IHeaderResponse response) {
super.renderHead(component, response);
String feedbackMsg = JGrowlUtil.asJGrowlCalls(IsisContext.getMessageBroker());
- if(!StringUtils.isNullOrEmpty(feedbackMsg)) {
+ if(!Strings.isNullOrEmpty(feedbackMsg)) {
response.render(OnDomReadyHeaderItem.forScript(feedbackMsg));
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
index 4c9d8ea..0356de0 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/selector/links/LinksSelectorPanelAbstract.java
@@ -41,7 +41,7 @@ import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
-import org.apache.isis.core.commons.lang.StringUtils;
+import org.apache.isis.core.commons.lang.StringExtensions;
import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
import org.apache.isis.viewer.wicket.model.links.LinksProvider;
import org.apache.isis.viewer.wicket.ui.ComponentFactory;
@@ -213,7 +213,7 @@ public abstract class LinksSelectorPanelAbstract<T extends IModel<?>> extends Pa
};
String name = nameFor(componentFactory);
Label viewTitleLabel = new Label(ID_VIEW_TITLE, name);
- viewTitleLabel.add(new CssClassAppender(StringUtils.toLowerDashed(name)));
+ viewTitleLabel.add(new CssClassAppender(StringExtensions.asLowerDashed(name)));
link.add(viewTitleLabel);
item.add(link);
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/CglibClassSubstitutor.java
----------------------------------------------------------------------
diff --git a/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/CglibClassSubstitutor.java b/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/CglibClassSubstitutor.java
index 5392754..681eb79 100644
--- a/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/CglibClassSubstitutor.java
+++ b/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/CglibClassSubstitutor.java
@@ -19,7 +19,7 @@
package org.apache.isis.core.bytecode.cglib;
-import org.apache.isis.core.commons.lang.JavaClassUtils;
+import org.apache.isis.core.commons.lang.ClassUtil;
import org.apache.isis.core.metamodel.specloader.classsubstitutor.CglibEnhanced;
import org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubstitutorAbstract;
@@ -35,7 +35,7 @@ public class CglibClassSubstitutor extends ClassSubstitutorAbstract {
*/
@Override
public Class<?> getClass(final Class<?> cls) {
- if (JavaClassUtils.directlyImplements(cls, CglibEnhanced.class)) {
+ if (ClassUtil.directlyImplements(cls, CglibEnhanced.class)) {
return getClass(cls.getSuperclass());
}
return super.getClass(cls);
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/ObjectResolveAndObjectChangedEnhancer.java
----------------------------------------------------------------------
diff --git a/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/ObjectResolveAndObjectChangedEnhancer.java b/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/ObjectResolveAndObjectChangedEnhancer.java
index 672d322..64ce728 100644
--- a/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/ObjectResolveAndObjectChangedEnhancer.java
+++ b/core/bytecode-cglib/src/main/java/org/apache/isis/core/bytecode/cglib/ObjectResolveAndObjectChangedEnhancer.java
@@ -28,7 +28,7 @@ import net.sf.cglib.proxy.Enhancer;
import net.sf.cglib.proxy.MethodInterceptor;
import net.sf.cglib.proxy.MethodProxy;
-import org.apache.isis.core.commons.lang.ArrayUtil;
+import org.apache.isis.core.commons.lang.ArrayExtensions;
import org.apache.isis.core.metamodel.facets.ImperativeFacetUtils;
import org.apache.isis.core.metamodel.facets.ImperativeFacetUtils.ImperativeFacetFlags;
import org.apache.isis.core.metamodel.spec.SpecificationLoaderSpi;
@@ -98,7 +98,7 @@ public class ObjectResolveAndObjectChangedEnhancer extends ObjectResolveAndObjec
if (enhancer == null) {
enhancer = new Enhancer();
enhancer.setSuperclass(cls);
- enhancer.setInterfaces(ArrayUtil.combine(cls.getInterfaces(), new Class<?>[] { CglibEnhanced.class }));
+ enhancer.setInterfaces(ArrayExtensions.combine(cls.getInterfaces(), new Class<?>[] { CglibEnhanced.class }));
enhancer.setCallback(callback);
enhancerByClass.put(cls, enhancer);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/JavassistClassSubstitutor.java
----------------------------------------------------------------------
diff --git a/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/JavassistClassSubstitutor.java b/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/JavassistClassSubstitutor.java
index 013a7aa..aecb166 100644
--- a/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/JavassistClassSubstitutor.java
+++ b/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/JavassistClassSubstitutor.java
@@ -19,7 +19,7 @@
package org.apache.isis.core.bytecode.javassist;
-import org.apache.isis.core.commons.lang.JavaClassUtils;
+import org.apache.isis.core.commons.lang.ClassUtil;
import org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubstitutorAbstract;
public class JavassistClassSubstitutor extends ClassSubstitutorAbstract {
@@ -36,7 +36,7 @@ public class JavassistClassSubstitutor extends ClassSubstitutorAbstract {
*/
@Override
public Class<?> getClass(final Class<?> cls) {
- if (JavaClassUtils.directlyImplements(cls, JavassistEnhanced.class)) {
+ if (ClassUtil.directlyImplements(cls, JavassistEnhanced.class)) {
return getClass(cls.getSuperclass());
}
return super.getClass(cls);
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/ObjectResolveAndObjectChangedEnhancer.java
----------------------------------------------------------------------
diff --git a/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/ObjectResolveAndObjectChangedEnhancer.java b/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/ObjectResolveAndObjectChangedEnhancer.java
index 2b11eae..df4ded0 100644
--- a/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/ObjectResolveAndObjectChangedEnhancer.java
+++ b/core/bytecode-javassist/src/main/java/org/apache/isis/core/bytecode/javassist/ObjectResolveAndObjectChangedEnhancer.java
@@ -27,7 +27,7 @@ import javassist.util.proxy.ProxyFactory;
import javassist.util.proxy.ProxyObject;
import org.apache.isis.core.commons.exceptions.IsisException;
-import org.apache.isis.core.commons.lang.ArrayUtil;
+import org.apache.isis.core.commons.lang.ArrayExtensions;
import org.apache.isis.core.metamodel.facets.ImperativeFacetUtils;
import org.apache.isis.core.metamodel.facets.ImperativeFacetUtils.ImperativeFacetFlags;
import org.apache.isis.core.metamodel.spec.SpecificationLoaderSpi;
@@ -86,7 +86,7 @@ public class ObjectResolveAndObjectChangedEnhancer extends ObjectResolveAndObjec
final ProxyFactory proxyFactory = new ProxyFactory();
proxyFactory.setSuperclass(cls);
- proxyFactory.setInterfaces(ArrayUtil.combine(cls.getInterfaces(), new Class<?>[] { JavassistEnhanced.class }));
+ proxyFactory.setInterfaces(ArrayExtensions.combine(cls.getInterfaces(), new Class<?>[] { JavassistEnhanced.class }));
proxyFactory.setFilter(new MethodFilter() {
@Override
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/commons/authentication/AuthenticationSessionAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/authentication/AuthenticationSessionAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/authentication/AuthenticationSessionAbstract.java
index 736f7e9..ff554f9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/authentication/AuthenticationSessionAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/authentication/AuthenticationSessionAbstract.java
@@ -30,7 +30,7 @@ import java.util.Map;
import org.apache.isis.core.commons.encoding.DataInputExtended;
import org.apache.isis.core.commons.encoding.DataOutputExtended;
-import org.apache.isis.core.commons.lang.ToString;
+import org.apache.isis.core.commons.util.ToString;
public abstract class AuthenticationSessionAbstract implements AuthenticationSession, Serializable {
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/commons/config/PropertiesReader.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/config/PropertiesReader.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/config/PropertiesReader.java
index fa8465e..7e5f09d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/config/PropertiesReader.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/config/PropertiesReader.java
@@ -23,7 +23,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
-import org.apache.isis.core.commons.lang.IoUtils;
+import org.apache.isis.core.commons.lang.CloseableExtensions;
import org.apache.isis.core.commons.resource.ResourceStreamSource;
/**
@@ -43,7 +43,7 @@ class PropertiesReader {
}
properties.load(in);
} finally {
- IoUtils.closeSafely(in);
+ CloseableExtensions.closeSafely(in);
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java
index 54484e5..178a09a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java
@@ -20,7 +20,7 @@
package org.apache.isis.core.commons.factory;
import org.apache.isis.core.commons.ensure.Assert;
-import org.apache.isis.core.commons.lang.CastUtils;
+import org.apache.isis.core.commons.lang.ObjectExtensions;
public final class InstanceUtil {
@@ -47,7 +47,7 @@ public final class InstanceUtil {
Class<? extends T> defaultType = null;
if (defaultTypeName != null) {
try {
- defaultType = CastUtils.cast(Thread.currentThread().getContextClassLoader().loadClass(defaultTypeName));
+ defaultType = ObjectExtensions.asT(Thread.currentThread().getContextClassLoader().loadClass(defaultTypeName));
if (defaultType == null) {
throw new InstanceCreationClassException("Failed to load default type '" + defaultTypeName + "'");
}
@@ -65,7 +65,7 @@ public final class InstanceUtil {
if (defaultTypeName != null) {
defaultType = loadClass(defaultTypeName, requiredType);
try {
- defaultType = CastUtils.cast(Thread.currentThread().getContextClassLoader().loadClass(defaultTypeName));
+ defaultType = ObjectExtensions.asT(Thread.currentThread().getContextClassLoader().loadClass(defaultTypeName));
if (defaultType == null) {
throw new InstanceCreationClassException("Failed to load default type '" + defaultTypeName + "'");
}
@@ -101,7 +101,7 @@ public final class InstanceUtil {
Assert.assertNotNull("Class to instantiate must be specified", cls);
try {
if (requiredType == null || requiredType.isAssignableFrom(cls)) {
- final Class<T> tClass = CastUtils.cast(cls);
+ final Class<T> tClass = ObjectExtensions.asT(cls);
return tClass.newInstance();
} else {
throw new InstanceCreationClassException("Class '" + cls.getName() + "' is not of type '" + requiredType + "'");
@@ -133,7 +133,7 @@ public final class InstanceUtil {
if (requiredType != null && !requiredType.isAssignableFrom(loadedClass)) {
throw new InstanceCreationClassException("Class '" + className + "' is not of type '" + requiredType + "'");
}
- return CastUtils.cast(loadedClass);
+ return ObjectExtensions.asT(loadedClass);
} catch (final NoClassDefFoundError e) {
throw new InstanceCreationClassException("Default type '" + className + "' found, but is missing a dependent class: " + e.getMessage(), e);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayExtensions.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayExtensions.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayExtensions.java
new file mode 100644
index 0000000..25a6f88
--- /dev/null
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayExtensions.java
@@ -0,0 +1,161 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.isis.core.commons.lang;
+
+import java.lang.reflect.Array;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+
+import org.apache.isis.core.commons.exceptions.IsisException;
+
+public final class ArrayExtensions {
+
+ private ArrayExtensions() {
+ }
+
+ static Object[] convertPrimitiveToObjectArray(final Object extendee, final Class<?> arrayType) {
+ Object[] convertedArray;
+ try {
+ final Class<?> wrapperClass = ClassExtensions.asWrapped(arrayType);
+ final Constructor<?> constructor = wrapperClass.getConstructor(new Class[] { String.class });
+ final int len = Array.getLength(extendee);
+ convertedArray = (Object[]) Array.newInstance(wrapperClass, len);
+ for (int i = 0; i < len; i++) {
+ convertedArray[i] = constructor.newInstance(new Object[] { Array.get(extendee, i).toString() });
+ }
+ } catch (final NoSuchMethodException e) {
+ throw new IsisException(e);
+ } catch (final ArrayIndexOutOfBoundsException e) {
+ throw new IsisException(e);
+ } catch (final IllegalArgumentException e) {
+ throw new IsisException(e);
+ } catch (final InstantiationException e) {
+ throw new IsisException(e);
+ } catch (final IllegalAccessException e) {
+ throw new IsisException(e);
+ } catch (final InvocationTargetException e) {
+ throw new IsisException(e);
+ }
+ return convertedArray;
+ }
+
+ public static Object[] asCharToCharacterArray(final Object extendee) {
+ final char[] original = (char[]) extendee;
+ final int len = original.length;
+ final Character[] converted = new Character[len];
+ for (int i = 0; i < converted.length; i++) {
+ converted[i] = Character.valueOf(original[i]);
+ }
+ return converted;
+ }
+
+ public static <T> T[] combine(final T[]... arrays) {
+ final List<T> combinedList = new ArrayList<T>();
+ for (final T[] array : arrays) {
+ for (final T t : array) {
+ combinedList.add(t);
+ }
+ }
+ return combinedList.toArray(arrays[0]); // using 1st element of arrays
+ // to specify the type
+ }
+
+ public static String[] append(final String[] extendee, final String... moreArgs) {
+ final ArrayList<String> argList = new ArrayList<String>();
+ argList.addAll(Arrays.asList(extendee));
+ argList.addAll(Arrays.asList(moreArgs));
+ return argList.toArray(new String[] {});
+ }
+
+ public static List<String> mergeToList(final String[] extendee, final String[] array2) {
+ final List<String> prefixes = new ArrayList<String>();
+ ArrayExtensions.addNoDuplicates(extendee, prefixes);
+ ArrayExtensions.addNoDuplicates(array2, prefixes);
+ return prefixes;
+ }
+
+ static void addNoDuplicates(final String[] array, final List<String> list) {
+ for (int i = 0; i < array.length; i++) {
+ if (!list.contains(array[i])) {
+ list.add(array[i]);
+ }
+ }
+ }
+
+ public static List<Object> asListFlattened(final Object[] objectArray) {
+ final List<Object> list = new ArrayList<Object>();
+ for (final Object element : objectArray) {
+ if (Collection.class.isAssignableFrom(element.getClass())) {
+ @SuppressWarnings("rawtypes")
+ final Collection collection = (Collection) element;
+ list.addAll(asListFlattened(collection.toArray()));
+ } else {
+ list.add(element);
+ }
+ }
+ return list;
+ }
+
+ public static <T> T coalesce(final T... strings) {
+ for (final T str : strings) {
+ if (str != null) {
+ return str;
+ }
+ }
+ return null;
+ }
+
+ public static String commaSeparatedClassNames(final List<Object> objects) {
+ final StringBuilder buf = new StringBuilder();
+ int i = 0;
+ for (final Object object : objects) {
+ if (i++ > 0) {
+ buf.append(',');
+ }
+ buf.append(object.getClass().getName());
+ }
+ return buf.toString();
+ }
+
+ public static String asSemicolonDelimitedStr(final List<String> list) {
+ final StringBuffer buf = new StringBuffer();
+ for (final String message : list) {
+ if (list.size() > 1) {
+ buf.append("; ");
+ }
+ buf.append(message);
+ }
+ return buf.toString();
+ }
+
+ public static List<Class<?>> toClasses(final List<Object> objectList) {
+ final List<Class<?>> classList = new ArrayList<Class<?>>();
+ for (final Object service : objectList) {
+ classList.add(service.getClass());
+ }
+ return classList;
+ }
+
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayUtil.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayUtil.java
deleted file mode 100644
index 3ff1662..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ArrayUtil.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.core.commons.lang;
-
-import java.lang.reflect.Array;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.apache.isis.core.commons.exceptions.IsisException;
-
-public final class ArrayUtil {
-
- private ArrayUtil() {
- }
-
- public static Object[] getObjectAsObjectArray(final Object option) {
- final Class<?> arrayType = option.getClass().getComponentType();
- if (!arrayType.isPrimitive()) {
- return (Object[]) option;
- }
- if (arrayType == char.class) {
- return ArrayUtil.convertCharToCharacterArray(option);
- } else {
- return convertPrimitiveToObjectArray(arrayType, option);
- }
- }
-
- private static Object[] convertPrimitiveToObjectArray(final Class<?> arrayType, final Object originalArray) {
- Object[] convertedArray;
- try {
- final Class<?> wrapperClass = WrapperUtils.wrap(arrayType);
- final Constructor<?> constructor = wrapperClass.getConstructor(new Class[] { String.class });
- final int len = Array.getLength(originalArray);
- convertedArray = (Object[]) Array.newInstance(wrapperClass, len);
- for (int i = 0; i < len; i++) {
- convertedArray[i] = constructor.newInstance(new Object[] { Array.get(originalArray, i).toString() });
- }
- } catch (final NoSuchMethodException e) {
- throw new IsisException(e);
- } catch (final ArrayIndexOutOfBoundsException e) {
- throw new IsisException(e);
- } catch (final IllegalArgumentException e) {
- throw new IsisException(e);
- } catch (final InstantiationException e) {
- throw new IsisException(e);
- } catch (final IllegalAccessException e) {
- throw new IsisException(e);
- } catch (final InvocationTargetException e) {
- throw new IsisException(e);
- }
- return convertedArray;
- }
-
- public static Object[] convertCharToCharacterArray(final Object originalArray) {
- final char[] original = (char[]) originalArray;
- final int len = original.length;
- final Character[] converted = new Character[len];
- for (int i = 0; i < converted.length; i++) {
- converted[i] = Character.valueOf(original[i]);
- }
- return converted;
- }
-
- public static <T> T[] combine(final T[]... arrays) {
- final List<T> combinedList = new ArrayList<T>();
- for (final T[] array : arrays) {
- for (final T t : array) {
- combinedList.add(t);
- }
- }
- return combinedList.toArray(arrays[0]); // using 1st element of arrays
- // to specify the type
- }
-
- public static String[] append(final String[] args, final String... moreArgs) {
- final ArrayList<String> argList = new ArrayList<String>();
- argList.addAll(Arrays.asList(args));
- argList.addAll(Arrays.asList(moreArgs));
- return argList.toArray(new String[] {});
- }
-
-}
http://git-wip-us.apache.org/repos/asf/isis/blob/91df9978/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/CastUtils.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/CastUtils.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/CastUtils.java
deleted file mode 100644
index 0ea6996..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/CastUtils.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.isis.core.commons.lang;
-
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.SortedMap;
-import java.util.SortedSet;
-import java.util.Vector;
-
-/**
- * Helpers to co-erce existing (Java 1.1 code) into type-safe generics without
- * having to suppress compiler warnings all over the place.
- *
- */
-public final class CastUtils {
-
- private CastUtils() {
- }
-
- @SuppressWarnings("unchecked")
- public static <T> T cast(final Object obj) {
- return (T) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <T> Enumeration<T> enumerationOver(final Object obj, final Class<T> castTo) {
- return (Enumeration<T>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <T> Iterator<T> iteratorOver(final Object obj, final Class<T> castTo) {
- return (Iterator<T>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <T> Collection<T> collectionOf(final Object obj, final Class<T> castTo) {
- return (Collection<T>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <T> List<T> listOf(final Object obj, final Class<T> castTo) {
- return (List<T>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <T> Vector<T> vectorOf(final Object obj, final Class<T> castTo) {
- return (Vector<T>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <T> Set<T> setOf(final Object obj, final Class<T> castTo) {
- return (Set<T>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <T> SortedSet<T> sortedSetOf(final Object obj, final Class<T> castTo) {
- return (SortedSet<T>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <K, V> Map<K, V> mapOf(final Object obj, final Class<K> keyCastTo, final Class<V> valueCastTo) {
- return (Map<K, V>) obj;
- }
-
- @SuppressWarnings("unchecked")
- public static <K, V> SortedMap<K, V> sortedMapOf(final Object obj, final Class<K> keyCastTo, final Class<V> valueCastTo) {
- return (SortedMap<K, V>) obj;
- }
-
-}