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 2012/05/15 08:17:48 UTC

svn commit: r1338545 - in /incubator/isis/trunk/framework: core/metamodel/src/test/java/org/apache/isis/core/metamodel/spec/ObjectSpecIdTest_constructor.java viewer/html/src/main/java/org/apache/isis/viewer/html/context/RootAdapterMappingAbstract.java

Author: danhaywood
Date: Tue May 15 06:17:48 2012
New Revision: 1338545

URL: http://svn.apache.org/viewvc?rev=1338545&view=rev
Log:
ISIS-214: final major bit of the Oid refactoring (forgot to svn add these)

Added:
    incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/spec/ObjectSpecIdTest_constructor.java   (with props)
    incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/context/RootAdapterMappingAbstract.java   (with props)

Added: incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/spec/ObjectSpecIdTest_constructor.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/spec/ObjectSpecIdTest_constructor.java?rev=1338545&view=auto
==============================================================================
--- incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/spec/ObjectSpecIdTest_constructor.java (added)
+++ incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/spec/ObjectSpecIdTest_constructor.java Tue May 15 06:17:48 2012
@@ -0,0 +1,25 @@
+package org.apache.isis.core.metamodel.spec;
+
+import org.junit.Test;
+
+public class ObjectSpecIdTest_constructor {
+
+    @Test
+    public void happyCase() throws Exception {
+        @SuppressWarnings("unused")
+        final ObjectSpecId objectSpecId = new ObjectSpecId("CUS");
+    }
+
+    @Test(expected=IllegalArgumentException.class)
+    public void cannotBeEmpty() throws Exception {
+        new ObjectSpecId("");
+    }
+
+
+    @Test(expected=IllegalArgumentException.class)
+    public void cannotBeNull() throws Exception {
+        new ObjectSpecId(null);
+    }
+
+
+}

Propchange: incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/spec/ObjectSpecIdTest_constructor.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/context/RootAdapterMappingAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/context/RootAdapterMappingAbstract.java?rev=1338545&view=auto
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/context/RootAdapterMappingAbstract.java (added)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/context/RootAdapterMappingAbstract.java Tue May 15 06:17:48 2012
@@ -0,0 +1,109 @@
+/*
+ *  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.html.context;
+
+import org.apache.isis.core.commons.debug.DebugBuilder;
+import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.oid.Oid;
+import org.apache.isis.core.metamodel.adapter.oid.RootOidDefault;
+import org.apache.isis.core.metamodel.adapter.version.Version;
+import org.apache.isis.runtimes.dflt.runtime.system.context.IsisContext;
+import org.apache.isis.runtimes.dflt.runtime.system.persistence.PersistenceSession;
+
+public abstract class RootAdapterMappingAbstract implements RootAdapterMapping {
+    
+    private static final long serialVersionUID = 1L;
+    
+    private final String oidStr;
+
+    public RootAdapterMappingAbstract(final ObjectAdapter adapter) {
+        final Oid oid = adapter.getOid();
+        oidStr = oid.enString();
+    }
+
+    @Override
+    public String getOidStr() {
+        return oidStr;
+    }
+
+    RootOidDefault getOid() {
+        return RootOidDefault.deString(oidStr);
+    }
+
+    @Override
+    public ObjectAdapter getObject() {
+        return getPersistenceSession().loadObject(getOid());
+    }
+
+
+    // /////////////////////////////////////////////////////
+    // version
+    // /////////////////////////////////////////////////////
+
+    @Override
+    public abstract Version getVersion();
+
+    @Override
+    public abstract void checkVersion(final ObjectAdapter object);
+
+    @Override
+    public abstract void updateVersion();
+
+    
+    // /////////////////////////////////////////////////////
+    // restoreToLoader
+    // /////////////////////////////////////////////////////
+
+    @Override
+    public abstract void restoreToLoader();
+
+
+    // /////////////////////////////////////////////////////
+    // value semantics
+    // /////////////////////////////////////////////////////
+
+    @Override
+    public int hashCode() {
+        return oidStr.hashCode();
+    }
+
+    @Override
+    public abstract boolean equals(final Object obj);
+
+
+    // /////////////////////////////////////////////////////
+    // debugging, toString
+    // /////////////////////////////////////////////////////
+
+    @Override
+    public abstract void debugData(final DebugBuilder debug);
+
+    @Override
+    public abstract String toString();
+
+    // /////////////////////////////////////////////////////
+    // Dependencies (from context)
+    // /////////////////////////////////////////////////////
+
+    private static PersistenceSession getPersistenceSession() {
+        return IsisContext.getPersistenceSession();
+    }
+
+}

Propchange: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/context/RootAdapterMappingAbstract.java
------------------------------------------------------------------------------
    svn:eol-style = native