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 2010/10/19 07:24:55 UTC

svn commit: r1024119 - in /incubator/isis/trunk: alternatives/objectstore/nosql/ alternatives/objectstore/sql/integrationtests/ alternatives/progmodel/headless/embedded/ defaults/objectstore/ defaults/progmodel/src/main/java/org/ defaults/progmodel/src...

Author: danhaywood
Date: Tue Oct 19 05:24:54 2010
New Revision: 1024119

URL: http://svn.apache.org/viewvc?rev=1024119&view=rev
Log:
moving progmodel out into defaults

Added:
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/metamodel/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/metamodel/specloader/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/metamodel/specloader/JavaReflector.java
      - copied unchanged from r1023931, incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/JavaReflector.java
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/metamodel/specloader/progmodelfacets/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/metamodel/specloader/progmodelfacets/ProgrammingModelFacetsJava5.java
      - copied unchanged from r1023931, incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/progmodelfacets/ProgrammingModelFacetsJava5.java
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/runtime/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/runtime/system/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/runtime/system/installers/
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/runtime/system/installers/JavaReflectorInstaller.java
      - copied unchanged from r1023931, incubator/isis/trunk/core/runtime/src/main/java/org/apache/isis/runtime/system/installers/JavaReflectorInstaller.java
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflectorTestAbstract.java   (with props)
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ArrayTest.java   (with props)
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_CollectionTest.java   (with props)
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ObjectTest.java   (with props)
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ValueTest.java   (with props)
    incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/runtime/
Modified:
    incubator/isis/trunk/alternatives/objectstore/nosql/pom.xml
    incubator/isis/trunk/alternatives/objectstore/sql/integrationtests/pom.xml
    incubator/isis/trunk/alternatives/progmodel/headless/embedded/pom.xml
    incubator/isis/trunk/defaults/objectstore/   (props changed)
    incubator/isis/trunk/defaults/objectstore/pom.xml
    incubator/isis/trunk/examples/metamodel-examples/namefile/pom.xml

Modified: incubator/isis/trunk/alternatives/objectstore/nosql/pom.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/objectstore/nosql/pom.xml?rev=1024119&r1=1024118&r2=1024119&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/objectstore/nosql/pom.xml (original)
+++ incubator/isis/trunk/alternatives/objectstore/nosql/pom.xml Tue Oct 19 05:24:54 2010
@@ -103,6 +103,12 @@
         </dependency>
 
         <dependency>
+            <groupId>org.apache.isis.defaults</groupId>
+            <artifactId>progmodel</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
             <groupId>org.mongodb</groupId>
             <artifactId>mongo-java-driver</artifactId>
         </dependency>

Modified: incubator/isis/trunk/alternatives/objectstore/sql/integrationtests/pom.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/objectstore/sql/integrationtests/pom.xml?rev=1024119&r1=1024118&r2=1024119&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/objectstore/sql/integrationtests/pom.xml (original)
+++ incubator/isis/trunk/alternatives/objectstore/sql/integrationtests/pom.xml Tue Oct 19 05:24:54 2010
@@ -48,11 +48,17 @@
             <type>test-jar</type>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>org.apache.isis.defaults</groupId>
+            <artifactId>progmodel</artifactId>
+            <scope>test</scope>
+        </dependency>
         
         <dependency>
             <groupId>org.apache.isis.alternatives.objectstore</groupId>
             <artifactId>sql-impl</artifactId>
         </dependency>
+        
 
         <!-- Required to support the XML cross-test -->
         <dependency>

Modified: incubator/isis/trunk/alternatives/progmodel/headless/embedded/pom.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/headless/embedded/pom.xml?rev=1024119&r1=1024118&r2=1024119&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/headless/embedded/pom.xml (original)
+++ incubator/isis/trunk/alternatives/progmodel/headless/embedded/pom.xml Tue Oct 19 05:24:54 2010
@@ -21,6 +21,11 @@
 			<artifactId>metamodel</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>org.apache.isis.defaults</groupId>
+            <artifactId>progmodel</artifactId>
+        </dependency>
+
 		<dependency>
 			<groupId>org.apache.isis.alternatives.progmodel</groupId>
 			<artifactId>headless-viewer</artifactId>

Propchange: incubator/isis/trunk/defaults/objectstore/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Oct 19 05:24:54 2010
@@ -2,3 +2,4 @@
 target
 .classpath
 .project
+fixture-data

Modified: incubator/isis/trunk/defaults/objectstore/pom.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/defaults/objectstore/pom.xml?rev=1024119&r1=1024118&r2=1024119&view=diff
==============================================================================
--- incubator/isis/trunk/defaults/objectstore/pom.xml (original)
+++ incubator/isis/trunk/defaults/objectstore/pom.xml Tue Oct 19 05:24:54 2010
@@ -34,6 +34,13 @@
 		    <type>test-jar</type>
 		    <scope>test</scope>
 		</dependency>
+
+        <dependency>
+            <groupId>org.apache.isis.defaults</groupId>
+            <artifactId>progmodel</artifactId>
+            <scope>test</scope>
+        </dependency>
+        
         
 	</dependencies>
 

Added: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflectorTestAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflectorTestAbstract.java?rev=1024119&view=auto
==============================================================================
--- incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflectorTestAbstract.java (added)
+++ incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflectorTestAbstract.java Tue Oct 19 05:24:54 2010
@@ -0,0 +1,160 @@
+/*
+ *  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.metamodel.specloader;
+
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+
+import org.apache.log4j.Level;
+import org.apache.log4j.Logger;
+import org.jmock.Expectations;
+import org.jmock.Mockery;
+import org.jmock.integration.junit4.JMock;
+import org.jmock.integration.junit4.JUnit4Mockery;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.apache.isis.metamodel.config.internal.PropertiesConfiguration;
+import org.apache.isis.metamodel.facetdecorator.FacetDecorator;
+import org.apache.isis.metamodel.facets.Facet;
+import org.apache.isis.metamodel.facets.actcoll.typeof.TypeOfFacet;
+import org.apache.isis.metamodel.facets.collections.modify.CollectionFacet;
+import org.apache.isis.metamodel.facets.naming.describedas.DescribedAsFacet;
+import org.apache.isis.metamodel.facets.naming.named.NamedFacet;
+import org.apache.isis.metamodel.facets.object.ident.plural.PluralFacet;
+import org.apache.isis.metamodel.spec.ObjectSpecification;
+import org.apache.isis.metamodel.specloader.JavaReflector;
+import org.apache.isis.metamodel.specloader.classsubstitutor.ClassSubstitutorIdentity;
+import org.apache.isis.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistryDefault;
+import org.apache.isis.metamodel.specloader.progmodelfacets.ProgrammingModelFacetsJava5;
+import org.apache.isis.metamodel.specloader.traverser.SpecificationTraverserDefault;
+import org.apache.isis.metamodel.specloader.validator.MetaModelValidatorNoop;
+import org.apache.isis.runtime.authentication.AuthenticationManager;
+import org.apache.isis.runtime.authorization.AuthorizationManager;
+import org.apache.isis.runtime.context.IsisContextStatic;
+import org.apache.isis.runtime.imageloader.TemplateImageLoader;
+import org.apache.isis.runtime.persistence.PersistenceSessionFactory;
+import org.apache.isis.runtime.persistence.internal.RuntimeContextFromSession;
+import org.apache.isis.runtime.session.IsisSessionFactory;
+import org.apache.isis.runtime.session.IsisSessionFactoryDefault;
+import org.apache.isis.runtime.system.DeploymentType;
+import org.apache.isis.runtime.userprofile.UserProfileLoader;
+
+
+@RunWith(JMock.class)
+public abstract class JavaReflectorTestAbstract {
+
+    private Mockery mockery = new JUnit4Mockery();
+
+    protected ObjectSpecification specification;
+    protected TemplateImageLoader mockTemplateImageLoader;
+    protected PersistenceSessionFactory mockPersistenceSessionFactory;
+    private UserProfileLoader mockUserProfileLoader;
+    protected AuthenticationManager mockAuthenticationManager;
+    protected AuthorizationManager mockAuthorizationManager;
+
+	private List<Object> servicesList;
+
+
+
+    @Before
+    public void setUp() throws Exception {
+        Logger.getRootLogger().setLevel(Level.OFF);
+
+        PropertiesConfiguration configuration = new PropertiesConfiguration();
+
+        mockTemplateImageLoader = mockery.mock(TemplateImageLoader.class);
+        mockPersistenceSessionFactory = mockery.mock(PersistenceSessionFactory.class);
+        mockUserProfileLoader = mockery.mock(UserProfileLoader.class);
+        mockAuthenticationManager = mockery.mock(AuthenticationManager.class);
+        mockAuthorizationManager = mockery.mock(AuthorizationManager.class);
+        servicesList = Collections.emptyList();
+        
+        mockery.checking(new Expectations() {{
+            ignoring(mockTemplateImageLoader);
+            ignoring(mockPersistenceSessionFactory);
+            ignoring(mockUserProfileLoader);
+            ignoring(mockAuthenticationManager);
+            ignoring(mockAuthorizationManager);
+        }});
+        
+
+        final JavaReflector reflector = 
+        	new JavaReflector(configuration, new ClassSubstitutorIdentity(), new CollectionTypeRegistryDefault(), new SpecificationTraverserDefault(), new ProgrammingModelFacetsJava5(), new HashSet<FacetDecorator>(), new MetaModelValidatorNoop());
+        reflector.setRuntimeContext(new RuntimeContextFromSession());
+        reflector.init();
+
+
+        // not sure if this is needed since we have now moved Reflector out to global scope,
+        // not specific to an ExecutionContext.
+        IsisSessionFactory executionContextFactory = 
+            new IsisSessionFactoryDefault(
+                    DeploymentType.EXPLORATION, 
+                    configuration, 
+                    mockTemplateImageLoader, 
+                    reflector, 
+                    mockAuthenticationManager, 
+                    mockAuthorizationManager, 
+                    mockUserProfileLoader, 
+                    mockPersistenceSessionFactory, servicesList);
+        IsisContextStatic.createRelaxedInstance(executionContextFactory);
+        IsisContextStatic.getInstance().getSessionInstance(); // cause an Execution Context to load
+
+
+        specification = loadSpecification(reflector);
+    }
+
+    protected abstract ObjectSpecification loadSpecification(JavaReflector reflector);
+
+    @Test
+    public void testCollectionFacet() throws Exception {
+        final Facet facet = specification.getFacet(CollectionFacet.class);
+        Assert.assertNull(facet);
+    }
+
+    @Test
+    public void testTypeOfFacet() throws Exception {
+        final TypeOfFacet facet = specification.getFacet(TypeOfFacet.class);
+        Assert.assertNull(facet);
+    }
+
+    @Test
+    public void testNamedFaced() throws Exception {
+        final Facet facet = specification.getFacet(NamedFacet.class);
+        Assert.assertNotNull(facet);
+    }
+
+    @Test
+    public void testPluralFaced() throws Exception {
+        final Facet facet = specification.getFacet(PluralFacet.class);
+        Assert.assertNotNull(facet);
+    }
+
+    @Test
+    public void testDescriptionFacet() throws Exception {
+        final Facet facet = specification.getFacet(DescribedAsFacet.class);
+        Assert.assertNotNull(facet);
+    }
+
+}
+

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflectorTestAbstract.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflectorTestAbstract.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ArrayTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ArrayTest.java?rev=1024119&view=auto
==============================================================================
--- incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ArrayTest.java (added)
+++ incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ArrayTest.java Tue Oct 19 05:24:54 2010
@@ -0,0 +1,66 @@
+/*
+ *  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.metamodel.specloader;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.apache.isis.metamodel.facets.Facet;
+import org.apache.isis.metamodel.facets.actcoll.typeof.TypeOfFacet;
+import org.apache.isis.metamodel.facets.collections.modify.CollectionFacet;
+import org.apache.isis.metamodel.spec.ObjectSpecification;
+import org.apache.isis.metamodel.specloader.JavaReflector;
+import org.apache.isis.runtime.testsystem.TestPojo;
+
+
+public class JavaReflector_ArrayTest extends JavaReflectorTestAbstract {
+
+    @Override
+    protected ObjectSpecification loadSpecification(final JavaReflector reflector) {
+        return reflector.loadSpecification(TestPojo[].class);
+    }
+
+    @Test
+    public void testType() throws Exception {
+        Assert.assertTrue(specification.isCollection());
+    }
+
+    @Test
+    public void testName() throws Exception {
+        Assert.assertEquals(TestPojo[].class.getName(), specification.getFullName());
+    }
+
+    @Test
+    @Override
+    public void testCollectionFacet() throws Exception {
+        final Facet facet = specification.getFacet(CollectionFacet.class);
+        Assert.assertNotNull(facet);
+    }
+
+    @Test
+    @Override
+    public void testTypeOfFacet() throws Exception {
+        final TypeOfFacet facet = specification.getFacet(TypeOfFacet.class);
+        Assert.assertNotNull(facet);
+        Assert.assertEquals(TestPojo.class, facet.value());
+    }
+
+}
+

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ArrayTest.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ArrayTest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_CollectionTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_CollectionTest.java?rev=1024119&view=auto
==============================================================================
--- incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_CollectionTest.java (added)
+++ incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_CollectionTest.java Tue Oct 19 05:24:54 2010
@@ -0,0 +1,67 @@
+/*
+ *  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.metamodel.specloader;
+
+import java.util.Vector;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.apache.isis.metamodel.facets.Facet;
+import org.apache.isis.metamodel.facets.actcoll.typeof.TypeOfFacet;
+import org.apache.isis.metamodel.facets.collections.modify.CollectionFacet;
+import org.apache.isis.metamodel.spec.ObjectSpecification;
+import org.apache.isis.metamodel.specloader.JavaReflector;
+
+
+public class JavaReflector_CollectionTest extends JavaReflectorTestAbstract {
+
+    @Override
+    protected ObjectSpecification loadSpecification(final JavaReflector reflector) {
+        return reflector.loadSpecification(Vector.class);
+    }
+
+    @Test
+    public void testType() throws Exception {
+        Assert.assertTrue(specification.isCollection());
+    }
+
+    @Test
+    public void testName() throws Exception {
+        Assert.assertEquals(Vector.class.getName(), specification.getFullName());
+    }
+
+    @Test
+    @Override
+    public void testCollectionFacet() throws Exception {
+        final Facet facet = specification.getFacet(CollectionFacet.class);
+        Assert.assertNotNull(facet);
+    }
+
+    @Test
+    @Override
+    public void testTypeOfFacet() throws Exception {
+        final TypeOfFacet facet = specification.getFacet(TypeOfFacet.class);
+        Assert.assertNotNull(facet);
+        Assert.assertEquals(Object.class, facet.value());
+    }
+
+}
+

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_CollectionTest.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_CollectionTest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ObjectTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ObjectTest.java?rev=1024119&view=auto
==============================================================================
--- incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ObjectTest.java (added)
+++ incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ObjectTest.java Tue Oct 19 05:24:54 2010
@@ -0,0 +1,80 @@
+/*
+ *  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.metamodel.specloader;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.apache.isis.metamodel.facets.Facet;
+import org.apache.isis.metamodel.facets.actcoll.typeof.TypeOfFacet;
+import org.apache.isis.metamodel.facets.collections.modify.CollectionFacet;
+import org.apache.isis.metamodel.facets.naming.describedas.DescribedAsFacet;
+import org.apache.isis.metamodel.facets.naming.named.NamedFacet;
+import org.apache.isis.metamodel.facets.object.ident.plural.PluralFacet;
+import org.apache.isis.metamodel.facets.object.ident.title.TitleFacet;
+import org.apache.isis.metamodel.facets.object.notpersistable.NotPersistableFacet;
+import org.apache.isis.metamodel.facets.object.validprops.ObjectValidPropertiesFacet;
+import org.apache.isis.metamodel.spec.ObjectSpecification;
+import org.apache.isis.metamodel.specloader.JavaReflector;
+import org.apache.isis.runtime.system.TestDomainObject;
+
+
+
+public class JavaReflector_ObjectTest extends JavaReflectorTestAbstract {
+
+    @Override
+    protected ObjectSpecification loadSpecification(final JavaReflector reflector) {
+        return reflector.loadSpecification(TestDomainObject.class);
+    }
+
+    @Test
+    public void testType() throws Exception {
+        Assert.assertTrue(specification.isNotCollection());
+    }
+
+    @Test
+    public void testName() throws Exception {
+        Assert.assertEquals(TestDomainObject.class.getName(), specification.getFullName());
+    }
+
+    @Test
+    public void testStandardFacets() throws Exception {
+        Assert.assertNotNull(specification.getFacet(NamedFacet.class));
+        Assert.assertNotNull(specification.getFacet(DescribedAsFacet.class));
+        Assert.assertNotNull(specification.getFacet(TitleFacet.class));
+        Assert.assertNotNull(specification.getFacet(PluralFacet.class));
+        Assert.assertNotNull(specification.getFacet(NotPersistableFacet.class));
+        Assert.assertNotNull(specification.getFacet(ObjectValidPropertiesFacet.class));
+    }
+
+    @Test
+    public void testNoCollectionFacet() throws Exception {
+        final Facet facet = specification.getFacet(CollectionFacet.class);
+        Assert.assertNull(facet);
+    }
+
+    @Test
+    public void testNoTypeOfFacet() throws Exception {
+        final TypeOfFacet facet = specification.getFacet(TypeOfFacet.class);
+        Assert.assertNull(facet);
+    }
+
+}
+

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ObjectTest.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ObjectTest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ValueTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ValueTest.java?rev=1024119&view=auto
==============================================================================
--- incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ValueTest.java (added)
+++ incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ValueTest.java Tue Oct 19 05:24:54 2010
@@ -0,0 +1,47 @@
+/*
+ *  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.metamodel.specloader;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.apache.isis.metamodel.spec.ObjectSpecification;
+import org.apache.isis.metamodel.specloader.JavaReflector;
+
+
+public class JavaReflector_ValueTest extends JavaReflectorTestAbstract {
+
+    @Override
+    protected ObjectSpecification loadSpecification(final JavaReflector reflector) {
+        return reflector.loadSpecification(String.class);
+    }
+
+    @Test
+    public void testType() throws Exception {
+        Assert.assertTrue(specification.isNotCollection());
+    }
+
+    @Test
+    public void testName() throws Exception {
+        Assert.assertEquals(String.class.getName(), specification.getFullName());
+    }
+
+}
+

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ValueTest.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Propchange: incubator/isis/trunk/defaults/progmodel/src/test/java/org/apache/isis/metamodel/specloader/JavaReflector_ValueTest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: incubator/isis/trunk/examples/metamodel-examples/namefile/pom.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/examples/metamodel-examples/namefile/pom.xml?rev=1024119&r1=1024118&r2=1024119&view=diff
==============================================================================
--- incubator/isis/trunk/examples/metamodel-examples/namefile/pom.xml (original)
+++ incubator/isis/trunk/examples/metamodel-examples/namefile/pom.xml Tue Oct 19 05:24:54 2010
@@ -39,6 +39,12 @@
 			<groupId>org.apache.isis.core</groupId>
 			<artifactId>runtime</artifactId>
 		</dependency>
+
+        <dependency>
+            <groupId>org.apache.isis.defaults</groupId>
+            <artifactId>progmodel</artifactId>
+        </dependency>
+
 		<dependency>
 			<groupId>junit</groupId>
 			<artifactId>junit</artifactId>