incubator-isis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From danhayw...@apache.org
Subject svn commit: r1051471 [1/10] - in /incubator/isis/trunk: alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/ alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/internal/ alternatives/objectstore/nosql/src/te...
Date Tue, 21 Dec 2010 12:06:23 GMT
Author: danhaywood
Date: Tue Dec 21 12:06:15 2010
New Revision: 1051471

URL: http://svn.apache.org/viewvc?rev=1051471&view=rev
Log:
splitting out RuntimeContext (ISIS-62)

Added:
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/AdapterMap.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/AdapterMapAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/AdapterMapAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/AdapterMapDelegator.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/AuthenticationSessionProvider.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/AuthenticationSessionProviderAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/AuthenticationSessionProviderAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/DependencyInjector.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/DependencyInjectorAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/DependencyInjectorAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/DomainObjectServices.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/DomainObjectServicesAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/DomainObjectServicesAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectDirtier.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectDirtierAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectDirtierAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectInstantiator.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectInstantiatorAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectInstantiatorAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectPersistor.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectPersistorAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ObjectPersistorAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/QuerySubmitter.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/QuerySubmitterAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/QuerySubmitterAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ServicesProvider.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ServicesProviderAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/ServicesProviderAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/SpecificationLookup.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/SpecificationLookupAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/SpecificationLookupAware.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/SpecificationLookupDelegator.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateAndTimeValueSemanticsProviderAbstract.java
      - copied, changed from r1051018, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaUtilDateValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ValueSemanticsProviderAndFacetAbstract.java
      - copied, changed from r1051018, incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ValueSemanticsProviderAbstract.java
Removed:
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaUtilDateValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/system/specpeer/DummyActionPeer.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/system/specpeer/DummyCollectionPeer.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/system/specpeer/DummyPropertyPeer.java
Modified:
    incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/IsisMetaModel.java
    incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/internal/RuntimeContextForEmbeddedMetaModel.java
    incubator/isis/trunk/alternatives/objectstore/nosql/src/test/java/org/apache/isis/alternatives/objectstore/nosql/TrialObjects.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/DomainObjectContainerWrapperFactory.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/AbstractCollectionInvocationHandler.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/CollectionInvocationHandler.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DelegatingInvocationHandlerDefault.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/MapInvocationHandler.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/Proxy.java
    incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/WrapperFactoryDefault.java
    incubator/isis/trunk/applib/src/main/java/org/apache/isis/applib/adapters/Parser.java
    incubator/isis/trunk/applib/src/main/java/org/apache/isis/applib/adapters/ValueSemanticsProvider.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetFactoryAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/SingleClassValueFacetAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/choices/PropertyChoicesFacet.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/RuntimeContext.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/RuntimeContextAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/noruntime/RuntimeContextNoRuntime.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/spec/IntrospectableSpecificationAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/spec/ObjectSpecificationNoMember.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/spec/feature/ObjectActionSet.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/spec/feature/ObjectAssociationAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/spec/feature/ObjectMemberAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/container/DomainObjectContainerDefault.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/identifier/Util.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/ObjectActionImpl.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/ObjectActionParameterAbstract.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/ObjectActionParameterParseable.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/OneToManyAssociationImpl.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/OneToOneActionParameterImpl.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/OneToOneAssociationImpl.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/facetprocessor/FacetProcessor.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/peer/ObjectMemberPeerImpl.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/peer/TypedHolder.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/internal/peer/TypedHolderImpl.java
    incubator/isis/trunk/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/ObjectAdapterUtils.java
    incubator/isis/trunk/core/metamodel/src/test/java/org/apache/isis/core/metamodel/runtimecontext/spec/feature/ObjectAssociationAbstractTest.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfAnnotationFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetDefaultToObject.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetInferredFromArray.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetInferredFromGenerics.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetInferredFromSupportingMethods.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actcoll/typeof/TypeOfFacetViaAnnotation.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/ActionMethodsFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/choices/ActionChoicesFacetViaMethod.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/choices/ActionParameterChoicesFacetAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/choices/ActionParameterChoicesFacetNone.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/choices/ActionParameterChoicesFacetViaMethod.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/actions/invoke/ActionInvocationFacetViaMethod.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/CollectionFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/CollectionFieldMethodsFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/JavaArrayFacet.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/JavaCollectionFacet.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/ObjectToAdapterTransformer.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionAddToFacetViaAccessor.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionClearFacetViaAccessor.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/collections/modify/CollectionRemoveFromFacetViaAccessor.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/naming/describedas/DescribedAsAnnotationFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedAnnotationFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetAnnotation.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetFromConfiguration.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/DefaultedFacetUsingDefaultsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/defaults/PropertyDefaultFacetDerivedFromDefaultedFacet.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableAnnotationFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetAnnotation.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetFromConfiguration.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/encodeable/EncodableFacetUsingEncoderDecoder.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/ident/title/TitleFacetUsingParser.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/immutable/ImmutableAnnotationFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetAnnotation.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFromConfiguration.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetUsingParser.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetAnnotation.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetFromConfiguration.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetUsingSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/PropertyMethodsFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/choices/PropertyChoicesFacetAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/choices/PropertyChoicesFacetViaMethod.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/properties/defaults/PropertyDefaultFacetViaMethod.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/enums/ActionParameterChoicesFacetDerivedFromChoicesFacet.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/enums/EnumFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/enums/EnumValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/enums/PropertyAndParameterChoicesFacetDerivedFromChoicesFacetFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/enums/PropertyChoicesFacetDerivedFromChoicesFacet.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/typicallength/TypicalLengthDerivedFromTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/typicallength/TypicalLengthFacetUsingParser.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/propparam/validate/mask/MaskAnnotationFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BigDecimalValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BigDecimalValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BigIntegerValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BigIntegerValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BooleanPrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BooleanPrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BooleanValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BooleanWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BooleanWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BytePrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/BytePrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ByteValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ByteWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ByteWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/CharPrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/CharPrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/CharValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/CharWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/CharWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ColorValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ColorValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateTimeValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateTimeValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DateValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DoublePrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DoublePrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DoubleValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DoubleWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/DoubleWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/FloatPrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/FloatPrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/FloatValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/FloatWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/FloatWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ImageValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ImageValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ImageValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/IntPrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/IntPrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/IntValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/IntWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/IntWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaAwtImageValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaAwtImageValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaSqlDateValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaSqlDateValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaSqlTimeStampValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaSqlTimeStampValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaSqlTimeValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaSqlTimeValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaUtilDateValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/JavaUtilDateValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/LongPrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/LongPrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/LongValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/LongWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/LongWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/MoneyValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/MoneyValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/PasswordValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/PasswordValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/PercentageValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/PercentageValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ShortPrimitiveValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ShortPrimitiveValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ShortValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ShortWrapperValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ShortWrapperValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/StringValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/StringValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/TimeStampValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/TimeStampValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/TimeStampValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/TimeValueSemanticsProvider.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/TimeValueSemanticsProviderAbstract.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/TimeValueTypeFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ValueSemanticsProviderAbstractTemporal.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/value/ValueUsingValueSemanticsProviderFacetFactory.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/spec/JavaSpecification.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/specloader/internal/instances/InstanceCollectionSpecification.java
    incubator/isis/trunk/core/progmodel/src/main/java/org/apache/isis/core/progmodel/specloader/internal/introspector/JavaIntrospector.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/actions/ActionMethodsFacetFactoryTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/collections/CollectionFieldMethodsFacetFactoryTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/collections/JavaCollectionFacetTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/object/parseable/ParseableFacetFactoryTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetFactoryTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/DeweyOrderSetTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberPeerStub.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyFieldMethodsFacetFactoryTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/validate/mask/MaskAnnotationFacetFactoryTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/BigDecimalValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/BigIntValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/BooleanValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/ByteValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/CharacterValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/ColorValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/DateTimeValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/DateValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/DoubleValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/FloatValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/ImageValueSemanticsProviderAbstractTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/IntValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/JavaSqlDateValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/JavaSqlTimeStampValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/JavaSqlTimeValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/JavaUtilDateValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/LongValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/MoneyValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/PasswordValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/PercentageValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/PolishMoneyValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/ShortValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/StringValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/TimeStampValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/TimeValueSemanticsProviderTest.java
    incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/value/ValueSemanticsProviderAbstractTestCase.java
    incubator/isis/trunk/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/PersistenceMechanismInstallerAbstract.java
    incubator/isis/trunk/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/adaptermanager/AdapterManager.java
    incubator/isis/trunk/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/adaptermanager/AdapterManagerLookup.java
    incubator/isis/trunk/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/internal/RuntimeContextFromSession.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionImplTest.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationImplTest.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/system/specpeer/DummyActionParamPeer.java
    incubator/isis/trunk/core/runtime/src/test/java/org/apache/isis/core/runtime/testsystem/ObjectAssociationNoop.java
    incubator/isis/trunk/core/src/docbkx/guide/isis-core.xml
    incubator/isis/trunk/defaults/progmodel/src/main/java/org/apache/isis/defaults/progmodel/JavaReflector.java
    incubator/isis/trunk/viewer/wicket/ui/src/test/java/org/apache/isis/viewer/wicket/ui/components/widgets/cssmenu/CssMenuUtilsTest.java

Modified: incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/IsisMetaModel.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/IsisMetaModel.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/IsisMetaModel.java (original)
+++ incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/IsisMetaModel.java Tue Dec 21 12:06:15 2010
@@ -122,7 +122,8 @@ public class IsisMetaModel implements Ap
 	// init, shutdown
 	/////////////////////////////////////////////////////////
 
-	public void init() {
+	@Override
+    public void init() {
 		ensureNotInitialized();
 		reflector = new JavaReflector(configuration, classSubstitutor, collectionTypeRegistry, specificationTraverser, programmingModelFacets, facetDecorators, metaModelValidator);
 
@@ -148,10 +149,11 @@ public class IsisMetaModel implements Ap
 		}
 		state = State.INITIALIZED;
 
-		viewer = new WrapperFactoryDefault(runtimeContext);
+		viewer = new WrapperFactoryDefault();
 	}
 
-	public void shutdown() {
+	@Override
+    public void shutdown() {
 		ensureInitialized();
 		state = State.SHUTDOWN;
 	}

Modified: incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/internal/RuntimeContextForEmbeddedMetaModel.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/internal/RuntimeContextForEmbeddedMetaModel.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/internal/RuntimeContextForEmbeddedMetaModel.java (original)
+++ incubator/isis/trunk/alternatives/embedded/src/main/java/org/apache/isis/alternatives/embedded/internal/RuntimeContextForEmbeddedMetaModel.java Tue Dec 21 12:06:15 2010
@@ -20,22 +20,36 @@
 
 package org.apache.isis.alternatives.embedded.internal;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
 import org.apache.isis.alternatives.embedded.EmbeddedContext;
-import org.apache.isis.alternatives.embedded.internal.PersistenceState;
-import org.apache.isis.alternatives.embedded.internal.ServiceAdapter;
-import org.apache.isis.alternatives.embedded.internal.StandaloneAdapter;
-import org.apache.isis.applib.query.Query;
+import org.apache.isis.applib.query.Query;
 import org.apache.isis.core.commons.components.ApplicationScopedComponent;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.adapter.oid.Oid;
 import org.apache.isis.core.metamodel.authentication.AuthenticationSession;
+import org.apache.isis.core.metamodel.runtimecontext.AuthenticationSessionProvider;
+import org.apache.isis.core.metamodel.runtimecontext.AuthenticationSessionProviderAbstract;
+import org.apache.isis.core.metamodel.runtimecontext.DependencyInjector;
+import org.apache.isis.core.metamodel.runtimecontext.DependencyInjectorAbstract;
+import org.apache.isis.core.metamodel.runtimecontext.DomainObjectServices;
+import org.apache.isis.core.metamodel.runtimecontext.DomainObjectServicesAbstract;
+import org.apache.isis.core.metamodel.runtimecontext.AdapterMap;
+import org.apache.isis.core.metamodel.runtimecontext.AdapterMapAbstract;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectDirtier;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectDirtierAbstract;
 import org.apache.isis.core.metamodel.runtimecontext.ObjectInstantiationException;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectInstantiator;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectInstantiatorAbstract;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectPersistor;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectPersistorAbstract;
+import org.apache.isis.core.metamodel.runtimecontext.QuerySubmitter;
+import org.apache.isis.core.metamodel.runtimecontext.QuerySubmitterAbstract;
 import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
 import org.apache.isis.core.metamodel.runtimecontext.RuntimeContextAbstract;
+import org.apache.isis.core.metamodel.runtimecontext.ServicesProvider;
+import org.apache.isis.core.metamodel.runtimecontext.ServicesProviderAbstract;
 import org.apache.isis.core.metamodel.services.ServicesInjector;
 import org.apache.isis.core.metamodel.services.ServicesInjectorDefault;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
@@ -52,13 +66,162 @@ public class RuntimeContextForEmbeddedMe
 	private final EmbeddedContext context;
 	private final List<Object> services;
 	private List<ObjectAdapter> serviceAdapters;
-	private ServicesInjector servicesInjector;
-
+	private ServicesInjector servicesInjector;
+    private final AdapterMap adapterMap;
+    private final ObjectInstantiator objectInstantiator;
+    private final ObjectDirtier objectDirtier;
+    private final ObjectPersistor objectPersistor;
+    private final AuthenticationSessionProvider authenticationSessionProvider;
+    private final ServicesProvider servicesProvider;
+    private final DomainObjectServices domainObjectServices;
+    private final QuerySubmitter querySubmitter;
+    private final DependencyInjector dependencyInjector;
+    
 	public RuntimeContextForEmbeddedMetaModel(
 			final EmbeddedContext context, 
 			final List<Object> services) {
 		this.context = context;
-		this.services = services;
+		this.services = services;
+		this.authenticationSessionProvider = new AuthenticationSessionProviderAbstract() {
+		    @Override
+		    public AuthenticationSession getAuthenticationSession() {
+		        return context.getAuthenticationSession();
+		    }
+        };
+        this.querySubmitter = new QuerySubmitterAbstract() {
+            @Override
+            public List<ObjectAdapter> allMatchingQuery(Query query) {
+                return wrap(context.allMatchingQuery(query));
+            }
+            @Override
+            public <T> ObjectAdapter firstMatchingQuery(Query<T> query) {
+                return getAdapterMap().adapterFor(context.firstMatchingQuery(query));
+            }
+
+        };
+		this.adapterMap = new AdapterMapAbstract() {
+	        @Override
+	        public ObjectAdapter adapterFor(Object domainObject) {
+	            ObjectSpecification domainObjectSpec = getSpecificationLookup().loadSpecification(domainObject.getClass());
+	            PersistenceState persistenceState = context.getPersistenceState(domainObject);
+	            return new StandaloneAdapter(domainObjectSpec, domainObject, persistenceState);
+	        }
+
+	        @Override
+	        public ObjectAdapter adapterFor(Object domainObject, ObjectAdapter ownerAdapter, Identified identified) {
+	            return adapterFor(domainObject);
+	        }
+
+	        @Override
+	        public ObjectAdapter getAdapterFor(Object domainObject) {
+	            return adapterFor(domainObject);
+	        }
+	    };
+        this.objectInstantiator = new ObjectInstantiatorAbstract() {
+            
+            @Override
+            public Object instantiate(Class<?> type) throws ObjectInstantiationException {
+                return context.instantiate(type);
+            }
+        };
+        
+        this.objectPersistor = new ObjectPersistorAbstract() {
+            
+            @Override
+            public void makePersistent(ObjectAdapter adapter) {
+                context.makePersistent(adapter.getObject());
+            }
+
+            @Override
+            public void remove(ObjectAdapter adapter) {
+                context.remove(adapter.getObject());
+            }
+            
+        };
+		this.objectDirtier = new ObjectDirtierAbstract(){
+
+	        @Override
+	        public void objectChanged(ObjectAdapter adapter) {
+	            context.objectChanged(adapter.getObject());
+	        }
+
+	        @Override
+	        public void objectChanged(Object object) {
+	            context.objectChanged(object);
+	        }
+	        
+	    };
+
+        this.servicesProvider = new ServicesProviderAbstract() {
+            @Override
+            public List<ObjectAdapter> getServices() {
+                return serviceAdapters;
+            }
+        };
+
+
+	    this.domainObjectServices = new DomainObjectServicesAbstract() {
+
+	        @Override
+	        public ObjectAdapter createTransientInstance(ObjectSpecification spec) {
+	            Object domainObject = spec.createObject(CreationMode.INITIALIZE);
+	            return adapterMap.adapterFor(domainObject);
+	        }
+
+	        @Override
+	        public void resolve(Object parent) {
+	            context.resolve(parent);
+	        }
+
+	        @Override
+	        public void resolve(Object parent, Object field) {
+	            context.resolve(parent, field);
+	        }
+
+	        @Override
+	        public boolean flush() {
+	            return context.flush();
+	        }
+	        
+	        @Override
+	        public void commit() {
+	            context.commit();
+	        }
+
+	        @Override
+            public String getProperty(String name) {
+                return RuntimeContextForEmbeddedMetaModel.this.getProperty(name);
+            }
+
+            @Override
+            public List<String> getPropertyNames() {
+                return RuntimeContextForEmbeddedMetaModel.this.getPropertyNames();
+            }
+
+            @Override
+            public void informUser(String message) {
+                context.informUser(message);
+            }
+
+            @Override
+            public void warnUser(String message) {
+                context.warnUser(message);
+            }
+
+            @Override
+            public void raiseError(String message) {
+                context.raiseError(message);
+            }
+        };
+        this.dependencyInjector = new DependencyInjectorAbstract() {
+            @Override
+            public void injectDependenciesInto(Object domainObject) {
+                if (servicesInjector == null) {
+                    throw new IllegalStateException("must setContainer before using this method");
+                }
+                servicesInjector.injectDependencies(domainObject);
+            }
+        };
 	}
 
 
@@ -66,7 +229,8 @@ public class RuntimeContextForEmbeddedMe
 	// init, shutdown
 	/////////////////////////////////////////////
 
-	public void init() {
+	@Override
+    public void init() {
 		this.serviceAdapters = adaptersFor(services);
 		
 		servicesInjector = new ServicesInjectorDefault();
@@ -75,7 +239,8 @@ public class RuntimeContextForEmbeddedMe
 	}
 	
 
-	public void shutdown() {
+	@Override
+    public void shutdown() {
 		// does nothing
 	}
 
@@ -83,171 +248,83 @@ public class RuntimeContextForEmbeddedMe
 	private List<ObjectAdapter> adaptersFor(List<Object> services) {
 		List<ObjectAdapter> serviceAdapters = new ArrayList<ObjectAdapter>();
 		for(Object service: services) {
-			ObjectSpecification spec = getSpecificationLoader().loadSpecification(service.getClass());
+			ObjectSpecification spec = getSpecificationLookup().loadSpecification(service.getClass());
 			serviceAdapters.add(new ServiceAdapter(spec, service));
 		}
 		return Collections.unmodifiableList(serviceAdapters);
 	}
 
-
-	/////////////////////////////////////////////
-	// AuthenticationSession
-	/////////////////////////////////////////////
 	
-	public AuthenticationSession getAuthenticationSession() {
-		return context.getAuthenticationSession();
-	}
-
-
-
 	/////////////////////////////////////////////
-	// getAdapterFor, adapterFor
+	// Components
 	/////////////////////////////////////////////
-
-	
-	public ObjectAdapter adapterFor(Object domainObject) {
-		ObjectSpecification domainObjectSpec = getSpecificationLoader().loadSpecification(domainObject.getClass());
-		PersistenceState persistenceState = context.getPersistenceState(domainObject);
-		return new StandaloneAdapter(domainObjectSpec, domainObject, persistenceState);
-	}
-
-	public ObjectAdapter adapterFor(Object domainObject, ObjectAdapter ownerAdapter, Identified identified) {
-		return adapterFor(domainObject);
-	}
-
-	public ObjectAdapter getAdapterFor(Object domainObject) {
-		return adapterFor(domainObject);
-	}
-
-	public ObjectAdapter getAdapterFor(Oid oid) {
-		throw new UnsupportedOperationException(
-		"Not supported by this implementation of RuntimeContext");
-	}
-	
-	
-	/////////////////////////////////////////////
-	// createTransientInstance, instantiate
-	/////////////////////////////////////////////
-	
-	public ObjectAdapter createTransientInstance(ObjectSpecification spec) {
-		Object domainObject = spec.createObject(CreationMode.INITIALIZE);
-		return adapterFor(domainObject);
-	}
-
-	public Object instantiate(Class<?> type) throws ObjectInstantiationException {
-		return context.instantiate(type);
-	}
-
-	
-	/////////////////////////////////////////////
-	// resolve, objectChanged
-	/////////////////////////////////////////////
-
-	public void resolve(Object parent) {
-		context.resolve(parent);
-	}
-
-	public void resolve(Object parent, Object field) {
-		context.resolve(parent, field);
-	}
-
-	public void objectChanged(ObjectAdapter adapter) {
-		context.objectChanged(adapter.getObject());
-	}
-
-	public void objectChanged(Object object) {
-		context.objectChanged(object);
-	}
-
-	
-	/////////////////////////////////////////////
-	// makePersistent, remove
-	/////////////////////////////////////////////
-
-
-	public void makePersistent(ObjectAdapter adapter) {
-		context.makePersistent(adapter.getObject());
-	}
-
-	public void remove(ObjectAdapter adapter) {
-		context.remove(adapter.getObject());
-	}
-	
-	
-	/////////////////////////////////////////////
-	// flush, commit
-	/////////////////////////////////////////////
-
-	public boolean flush() {
-		return context.flush();
-	}
+
+	@Override
+	public AuthenticationSessionProvider getAuthenticationSessionProvider() {
+	    return authenticationSessionProvider;
+	}
+	
+    @Override
+    public AdapterMap getAdapterMap() {
+        return adapterMap;
+    }
+
+    @Override
+    public ObjectInstantiator getObjectInstantiator() {
+        return objectInstantiator;
+    }
+    
+    @Override
+    public ObjectDirtier getObjectDirtier() {
+        return objectDirtier;
+    }
+
+    @Override
+    public ServicesProvider getServicesProvider() {
+        return servicesProvider;
+    }
+
+    @Override
+    public DependencyInjector getDependencyInjector() {
+        return dependencyInjector;
+    }
+
+    @Override
+    public DomainObjectServices getDomainObjectServices() {
+        return domainObjectServices;
+    }
+
+    @Override
+    public QuerySubmitter getQuerySubmitter() {
+        return querySubmitter;
+    }
 	
-	public void commit() {
-		context.commit();
-	}
+
+    @Override
+    public ObjectPersistor getObjectPersistor() {
+        return objectPersistor;
+    }
 
 	
 	/////////////////////////////////////////////
-	// allMatchingQuery, firstMatchingQuery
+	// firstMatchingQuery
 	/////////////////////////////////////////////
 
-	public <T> List<ObjectAdapter> allMatchingQuery(Query<T> query) {
-		return wrap(context.allMatchingQuery(query));
-	}
-
-	public <T> ObjectAdapter firstMatchingQuery(Query<T> query) {
-		return adapterFor(context.firstMatchingQuery(query));
-	}
-
 	private List<ObjectAdapter> wrap(List<?> pojos) {
 		List<ObjectAdapter> adapters = new ArrayList<ObjectAdapter>();
 		for(Object pojo: pojos) {
-			adapters.add(adapterFor(pojo));
+			adapters.add(getAdapterMap().adapterFor(pojo));
 		}
 		return adapters;
 	}
 
 
-    ////////////////////////////////////////////////////////////////////
-    // info, warn, error messages
-    ////////////////////////////////////////////////////////////////////
-
-	public void informUser(String message) {
-		context.informUser(message);
-	}
-
-	public void warnUser(String message) {
-		context.warnUser(message);
-	}
-
-	public void raiseError(String message) {
-		context.raiseError(message);
-	}
-	
-
 	/////////////////////////////////////////////
-	// getServices, injectDependenciesInto
+	// getServices
 	/////////////////////////////////////////////
-	
-	/**
-	 * Unmodifiable. 
-	 */
-	public List<ObjectAdapter> getServices() {
-		return serviceAdapters;
-	}
-
-	public void injectDependenciesInto(Object domainObject) {
-		if (servicesInjector == null) {
-			throw new IllegalStateException("must setContainer before using this method");
-		}
-		servicesInjector.injectDependencies(domainObject);
-	}
-
 
 	public ServicesInjector getServicesInjector() {
 		return servicesInjector;
-	}
-
-
+	}
 
 }

Modified: incubator/isis/trunk/alternatives/objectstore/nosql/src/test/java/org/apache/isis/alternatives/objectstore/nosql/TrialObjects.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/objectstore/nosql/src/test/java/org/apache/isis/alternatives/objectstore/nosql/TrialObjects.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/objectstore/nosql/src/test/java/org/apache/isis/alternatives/objectstore/nosql/TrialObjects.java (original)
+++ incubator/isis/trunk/alternatives/objectstore/nosql/src/test/java/org/apache/isis/alternatives/objectstore/nosql/TrialObjects.java Tue Dec 21 12:06:15 2010
@@ -19,15 +19,18 @@
 
 package org.apache.isis.alternatives.objectstore.nosql;
 
-import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
 
+import com.google.common.collect.Maps;
+
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.ResolveState;
 import org.apache.isis.core.metamodel.adapter.oid.Oid;
 import org.apache.isis.core.metamodel.config.internal.PropertiesConfiguration;
 import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
+import org.apache.isis.core.metamodel.runtimecontext.AdapterMap;
+import org.apache.isis.core.metamodel.runtimecontext.AdapterMapDelegator;
 import org.apache.isis.core.metamodel.runtimecontext.noruntime.RuntimeContextNoRuntime;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.spec.identifier.Identified;
@@ -47,7 +50,7 @@ public class TrialObjects {
     private AdapterFactory factory;
     private JavaReflector reflector;
 
-    private final Map<Object, ObjectAdapter> adapters = new HashMap<Object, ObjectAdapter>();
+    private final Map<Object, ObjectAdapter> adapters = Maps.newHashMap();
 
     public TrialObjects() {
 
@@ -58,20 +61,25 @@ public class TrialObjects {
                 new SpecificationTraverserDefault(), new ProgrammingModelFacetsJava5(), new HashSet<FacetDecorator>(),
                 new MetaModelValidatorNoop());
         reflector.setRuntimeContext(new RuntimeContextNoRuntime() {
-            @Override
-            public ObjectAdapter adapterFor(Object pattern) {
-                return adapters.get(pattern);
-            }
 
             @Override
-            public ObjectAdapter adapterFor(Object pojo, ObjectAdapter ownerAdapter, Identified identified) {
-                if (adapters.get(pojo) != null) {
-                    return adapters.get(pojo);
-                } else {
-                    return factory.createAdapter(pojo, null);
-                }
+            public AdapterMap getAdapterMap() {
+                return new AdapterMapDelegator(super.getAdapterMap()) {
+                    @Override
+                    public ObjectAdapter adapterFor(Object pattern) {
+                        return adapters.get(pattern);
+                    }
+
+                    @Override
+                    public ObjectAdapter adapterFor(Object pojo, ObjectAdapter ownerAdapter, Identified identified) {
+                        if (adapters.get(pojo) != null) {
+                            return adapters.get(pojo);
+                        } else {
+                            return factory.createAdapter(pojo, null);
+                        }
+                    }
+                };
             }
-
         });
         reflector.init();
 

Modified: incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/DomainObjectContainerWrapperFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/DomainObjectContainerWrapperFactory.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/DomainObjectContainerWrapperFactory.java (original)
+++ incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/DomainObjectContainerWrapperFactory.java Tue Dec 21 12:06:15 2010
@@ -23,7 +23,10 @@ import java.util.List;
 
 import org.apache.isis.applib.DomainObjectContainer;
 import org.apache.isis.applib.events.InteractionEvent;
-import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
+import org.apache.isis.core.metamodel.runtimecontext.AuthenticationSessionProvider;
+import org.apache.isis.core.metamodel.runtimecontext.AdapterMap;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectPersistor;
+import org.apache.isis.core.metamodel.runtimecontext.SpecificationLookup;
 import org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault;
 import org.apache.isis.progmodel.wrapper.applib.WrapperFactory;
 import org.apache.isis.progmodel.wrapper.applib.listeners.InteractionListener;
@@ -34,8 +37,13 @@ import org.apache.isis.progmodel.wrapper
  */
 public class DomainObjectContainerWrapperFactory extends DomainObjectContainerDefault implements WrapperFactory {
 
-    private WrapperFactory wrapperFactoryDelegate;
+    private final WrapperFactoryDefault wrapperFactoryDelegate;
 
+    public DomainObjectContainerWrapperFactory() {
+        this.wrapperFactoryDelegate = new WrapperFactoryDefault();
+    }
+    
+    
     // /////////////////////////////////////////////////////////////
     // Views
     // /////////////////////////////////////////////////////////////
@@ -79,17 +87,32 @@ public class DomainObjectContainerWrappe
         wrapperFactoryDelegate.notifyListeners(interactionEvent);
     }
 
+    
     // /////////////////////////////////////////////////////////////
-    // Dependencies (due to *Aware)
+    // Dependencies
     // /////////////////////////////////////////////////////////////
 
-    /**
-     * As per superclass, but also initializes the delegate {@link WrapperFactory}.
-     */
     @Override
-    public void setRuntimeContext(RuntimeContext runtimeContext) {
-        super.setRuntimeContext(runtimeContext);
-        wrapperFactoryDelegate = new WrapperFactoryDefault(runtimeContext);
+    public void setSpecificationLookup(SpecificationLookup specificationLookup) {
+        super.setSpecificationLookup(specificationLookup);
+        wrapperFactoryDelegate.setSpecificationLookup(specificationLookup);
+    }
+
+    @Override
+    public void setAuthenticationSessionProvider(AuthenticationSessionProvider authenticationSessionProvider) {
+        super.setAuthenticationSessionProvider(authenticationSessionProvider);
+        wrapperFactoryDelegate.setAuthenticationSessionProvider(authenticationSessionProvider);
+    }
+    
+    @Override
+    public void setAdapterMap(AdapterMap adapterManager) {
+        super.setAdapterMap(adapterManager);
+        wrapperFactoryDelegate.setAdapterMap(adapterManager);
     }
 
+    @Override
+    public void setObjectPersistor(ObjectPersistor objectPersistor) {
+        super.setObjectPersistor(objectPersistor);
+        wrapperFactoryDelegate.setObjectPersistor(objectPersistor);
+    }
 }

Modified: incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/AbstractCollectionInvocationHandler.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/AbstractCollectionInvocationHandler.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/AbstractCollectionInvocationHandler.java (original)
+++ incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/AbstractCollectionInvocationHandler.java Tue Dec 21 12:06:15 2010
@@ -26,7 +26,6 @@ import java.util.List;
 
 import org.apache.isis.applib.events.CollectionMethodEvent;
 import org.apache.isis.applib.events.InteractionEvent;
-import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
 import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
 
 
@@ -42,9 +41,8 @@ abstract class AbstractCollectionInvocat
             final C collectionOrMapToProxy,
             final String collectionName,
             final DomainObjectInvocationHandler<T> handler,
-            final RuntimeContext runtimeContext,
             final OneToManyAssociation otma) {
-        super(collectionOrMapToProxy, handler.getHeadlessViewer(), handler.getExecutionMode(), runtimeContext);
+        super(collectionOrMapToProxy, handler.getHeadlessViewer(), handler.getExecutionMode());
         this.collectionName = collectionName;
         this.oneToManyAssociation = otma;
         this.domainObject = handler.getDelegate();

Modified: incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/CollectionInvocationHandler.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/CollectionInvocationHandler.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/CollectionInvocationHandler.java (original)
+++ incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/CollectionInvocationHandler.java Tue Dec 21 12:06:15 2010
@@ -25,7 +25,6 @@ import static org.apache.isis.core.commo
 import java.util.Collection;
 import java.util.List;
 
-import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
 import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
 
 
@@ -35,9 +34,8 @@ class CollectionInvocationHandler<T, R> 
             final R collectionToProxy,
             final String collectionName,
             final DomainObjectInvocationHandler<T> handler,
-            final RuntimeContext runtimeContext,
             final OneToManyAssociation otma) {
-        super(collectionToProxy, collectionName, handler, runtimeContext, otma);
+        super(collectionToProxy, collectionName, handler, otma);
 
         try {
             intercept(getMethod(collectionToProxy, "contains", Object.class));

Modified: incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DelegatingInvocationHandlerDefault.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DelegatingInvocationHandlerDefault.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DelegatingInvocationHandlerDefault.java (original)
+++ incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DelegatingInvocationHandlerDefault.java Tue Dec 21 12:06:15 2010
@@ -25,9 +25,6 @@ import java.lang.reflect.Method;
 
 import org.apache.isis.applib.events.InteractionEvent;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-import org.apache.isis.core.metamodel.authentication.AuthenticationSession;
-import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
-import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
 import org.apache.isis.core.runtime.persistence.container.DomainObjectContainerObjectChanged;
 import org.apache.isis.core.runtime.persistence.container.DomainObjectContainerResolve;
 import org.apache.isis.progmodel.wrapper.applib.WrapperFactory;
@@ -38,9 +35,8 @@ import org.apache.isis.progmodel.wrapper
 public class DelegatingInvocationHandlerDefault<T> implements DelegatingInvocationHandler<T> {
 
     private final T delegate;
-    protected final WrapperFactory headlessViewer;
+    protected final WrapperFactory wrapperFactory;
     private final ExecutionMode executionMode;
-    private final RuntimeContext runtimeContext;
 
     protected final Method equalsMethod;
     protected final Method hashCodeMethod;
@@ -54,15 +50,13 @@ public class DelegatingInvocationHandler
     public DelegatingInvocationHandlerDefault(
             final T delegate,
             final WrapperFactory headlessViewer,
-            final ExecutionMode executionMode,
-            final RuntimeContext runtimeContext) {
+            final ExecutionMode executionMode) {
         if (delegate == null) {
             throw new IllegalArgumentException("delegate must not be null");
         }
         this.delegate = delegate;
-        this.headlessViewer = headlessViewer;
+        this.wrapperFactory = headlessViewer;
         this.executionMode = executionMode;
-        this.runtimeContext = runtimeContext;
 
         this.domainObjectContainerResolve = new DomainObjectContainerResolve();
         this.domainObjectContainerObjectChanged = new DomainObjectContainerObjectChanged();
@@ -78,9 +72,11 @@ public class DelegatingInvocationHandler
         }
     }
 
-	public boolean isResolveObjectChangedEnabled() {
+	@Override
+    public boolean isResolveObjectChangedEnabled() {
 		return resolveObjectChangedEnabled;
 	}
+    @Override
     public void setResolveObjectChangedEnabled(boolean resolveObjectChangedEnabled) {
     	this.resolveObjectChangedEnabled = resolveObjectChangedEnabled;
     }
@@ -107,9 +103,10 @@ public class DelegatingInvocationHandler
 
 
     public WrapperFactory getHeadlessViewer() {
-        return headlessViewer;
+        return wrapperFactory;
     }
 
+    @Override
     public T getDelegate() {
         return delegate;
     }
@@ -121,12 +118,6 @@ public class DelegatingInvocationHandler
     protected Object delegate(final Method method, final Object[] args) throws IllegalArgumentException, IllegalAccessException,
             InvocationTargetException {
 
-    	
-        // commented out, hoping isn't needed...
-//        if (method.equals(getHandlerMethod)) {
-//            return this;
-//        }
-
         return method.invoke(getDelegate(), args);
     }
 
@@ -134,41 +125,17 @@ public class DelegatingInvocationHandler
         return toStringMethod.equals(method) || hashCodeMethod.equals(method) || equalsMethod.equals(method);
     }
 
-    // commented out, hoping isn't needed...
-//    protected boolean isObjectAdapterTestViewHandlerMethod(final Method method) {
-//        return getHandlerMethod.equals(method);
-//    }
 
+    @Override
     public Object invoke(final Object object, final Method method, final Object[] args) throws Throwable {
-
         return method.invoke(object, args);
     }
 
     protected InteractionEvent notifyListeners(final InteractionEvent interactionEvent) {
-        headlessViewer.notifyListeners(interactionEvent);
+        wrapperFactory.notifyListeners(interactionEvent);
         return interactionEvent;
     }
 
     
-    // /////////////////////////////////////////////////////////////////
-    // Dependencies (from constructor)
-    // /////////////////////////////////////////////////////////////////
-
-    protected RuntimeContext getRuntimeContext() {
-		return runtimeContext;
-	}
-    
 
-    // /////////////////////////////////////////////////////////////////
-    // Dependencies (from runtime context)
-    // /////////////////////////////////////////////////////////////////
-
-    protected SpecificationLoader getSpecificationLoader() {
-        return runtimeContext.getSpecificationLoader();
-    }
-
-    protected AuthenticationSession getAuthenticationSession() {
-        return runtimeContext.getAuthenticationSession();
-    }
-    
 }

Modified: incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java (original)
+++ incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java Tue Dec 21 12:06:15 2010
@@ -38,7 +38,10 @@ import org.apache.isis.core.metamodel.au
 import org.apache.isis.core.metamodel.consent.InteractionInvocationMethod;
 import org.apache.isis.core.metamodel.consent.InteractionResult;
 import org.apache.isis.core.metamodel.interactions.ObjectTitleContext;
-import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
+import org.apache.isis.core.metamodel.runtimecontext.AuthenticationSessionProvider;
+import org.apache.isis.core.metamodel.runtimecontext.AdapterMap;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectPersistor;
+import org.apache.isis.core.metamodel.runtimecontext.SpecificationLookup;
 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.ObjectMember;
@@ -58,27 +61,43 @@ import org.apache.isis.progmodel.wrapper
 
 public class DomainObjectInvocationHandler<T> extends DelegatingInvocationHandlerDefault<T> {
 
+
+    private final Map<Method, Collection<?>> collectionViewObjectsByMethod = new HashMap<Method, Collection<?>>();
+    private final Map<Method, Map<?, ?>> mapViewObjectsByMethod = new HashMap<Method, Map<?, ?>>();
+
+    private final AuthenticationSessionProvider authenticationSessionProvider;
+    private final SpecificationLookup specificationLookup;
+    private final AdapterMap adapterManager;
+    private final ObjectPersistor objectPersistor;
+
     /**
      * The <tt>title()</tt> method; may be <tt>null</tt>.
      */
     protected Method titleMethod;
-
+    
     /**
      * The <tt>save()</tt> method from {@link WrapperObject#save()}.
      */
     protected Method saveMethod;
-
+    
     /**
      * The <tt>underlying()</tt> method from {@link WrapperObject#wrapped()}.
      */
     protected Method wrappedMethod;
 
-    private final Map<Method, Collection<?>> collectionViewObjectsByMethod = new HashMap<Method, Collection<?>>();
-    private final Map<Method, Map<?, ?>> mapViewObjectsByMethod = new HashMap<Method, Map<?, ?>>();
-
     public DomainObjectInvocationHandler(final T delegate, final WrapperFactory embeddedViewer,
-        final ExecutionMode mode, final RuntimeContext runtimeContext) {
-        super(delegate, embeddedViewer, mode, runtimeContext);
+            final ExecutionMode mode,
+            final AuthenticationSessionProvider authenticationSessionProvider,
+            final SpecificationLookup specificationLookup,
+            final AdapterMap adapterManager,
+            final ObjectPersistor objectPersistor) {
+        super(delegate, embeddedViewer, mode);
+
+        this.authenticationSessionProvider = authenticationSessionProvider;
+        this.specificationLookup = specificationLookup;
+        this.adapterManager = adapterManager;
+        this.objectPersistor = objectPersistor;
+
         try {
             titleMethod = delegate.getClass().getMethod("title", new Class[] {});
             saveMethod = WrapperObject.class.getMethod("save", new Class[] {});
@@ -94,7 +113,7 @@ public class DomainObjectInvocationHandl
             return delegate(method, args);
         }
 
-        final ObjectAdapter targetAdapter = getRuntimeContext().getAdapterFor(getDelegate());
+        final ObjectAdapter targetAdapter = getAdapterManager().getAdapterFor(getDelegate());
 
         if (isTitleMethod(method)) {
             return handleTitleMethod(method, args, targetAdapter);
@@ -213,7 +232,7 @@ public class DomainObjectInvocationHandl
 
         if (getExecutionMode() == ExecutionMode.EXECUTE) {
             if (targetAdapter.isTransient()) {
-                getRuntimeContext().makePersistent(targetAdapter);
+                getObjectPersistor().makePersistent(targetAdapter);
             }
         }
         return null;
@@ -253,7 +272,7 @@ public class DomainObjectInvocationHandl
         resolveIfRequired(targetAdapter);
 
         final Object argumentObj = underlying(args[0]);
-        final ObjectAdapter argumentNO = argumentObj != null ? getRuntimeContext().adapterFor(argumentObj) : null;
+        final ObjectAdapter argumentNO = argumentObj != null ? getAdapterManager().adapterFor(argumentObj) : null;
 
         final InteractionResult interactionResult =
             otoa.isAssociationValid(targetAdapter, argumentNO).getInteractionResult();
@@ -314,7 +333,7 @@ public class DomainObjectInvocationHandl
             if (collectionToLookup instanceof WrapperObject) {
                 collectionViewObject = collectionToLookup;
             } else {
-                collectionViewObject = Proxy.proxy(collectionToLookup, memberName, this, getRuntimeContext(), otma);
+                collectionViewObject = Proxy.proxy(collectionToLookup, memberName, this, otma);
             }
             collectionViewObjectsByMethod.put(method, collectionViewObject);
         }
@@ -328,7 +347,7 @@ public class DomainObjectInvocationHandl
             if (mapToLookup instanceof WrapperObject) {
                 mapViewObject = mapToLookup;
             } else {
-                mapViewObject = Proxy.proxy(mapToLookup, memberName, this, getRuntimeContext(), otma);
+                mapViewObject = Proxy.proxy(mapToLookup, memberName, this, otma);
             }
             mapViewObjectsByMethod.put(method, mapViewObject);
         }
@@ -352,7 +371,7 @@ public class DomainObjectInvocationHandl
         if (argumentObj == null) {
             throw new IllegalArgumentException("Must provide a non-null object to add");
         }
-        final ObjectAdapter argumentNO = getRuntimeContext().adapterFor(argumentObj);
+        final ObjectAdapter argumentNO = getAdapterManager().adapterFor(argumentObj);
 
         final InteractionResult interactionResult = otma.isValidToAdd(targetAdapter, argumentNO).getInteractionResult();
         notifyListenersAndVetoIfRequired(interactionResult);
@@ -382,7 +401,7 @@ public class DomainObjectInvocationHandl
         if (argumentObj == null) {
             throw new IllegalArgumentException("Must provide a non-null object to remove");
         }
-        final ObjectAdapter argumentAdapter = getRuntimeContext().adapterFor(argumentObj);
+        final ObjectAdapter argumentAdapter = getAdapterManager().adapterFor(argumentObj);
 
         final InteractionResult interactionResult =
             otma.isValidToRemove(targetAdapter, argumentAdapter).getInteractionResult();
@@ -413,7 +432,7 @@ public class DomainObjectInvocationHandl
         final ObjectAdapter[] argAdapters = new ObjectAdapter[underlyingArgs.length];
         int j = 0;
         for (final Object underlyingArg : underlyingArgs) {
-            argAdapters[j++] = underlyingArg != null ? getRuntimeContext().adapterFor(underlyingArg) : null;
+            argAdapters[j++] = underlyingArg != null ? getAdapterManager().adapterFor(underlyingArg) : null;
         }
 
         final InteractionResult interactionResult =
@@ -584,8 +603,33 @@ public class DomainObjectInvocationHandl
     }
 
     private ObjectSpecification getSpecification(final Class<?> type) {
-        final ObjectSpecification nos = getSpecificationLoader().loadSpecification(type);
+        final ObjectSpecification nos = getSpecificationLookup().loadSpecification(type);
         return nos;
     }
 
+    
+    // /////////////////////////////////////////////////////////////////
+    // Dependencies
+    // /////////////////////////////////////////////////////////////////
+
+    protected SpecificationLookup getSpecificationLookup() {
+        return specificationLookup;
+    }
+
+    public AuthenticationSessionProvider getAuthenticationSessionProvider() {
+        return authenticationSessionProvider;
+    }
+    
+    protected AuthenticationSession getAuthenticationSession() {
+        return getAuthenticationSessionProvider().getAuthenticationSession();
+    }
+    
+    protected AdapterMap getAdapterManager() {
+        return adapterManager;
+    }
+
+    protected ObjectPersistor getObjectPersistor() {
+        return objectPersistor;
+    }
+
 }

Modified: incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/MapInvocationHandler.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/MapInvocationHandler.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/MapInvocationHandler.java (original)
+++ incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/MapInvocationHandler.java Tue Dec 21 12:06:15 2010
@@ -24,7 +24,6 @@ import static org.apache.isis.core.commo
 
 import java.util.Map;
 
-import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
 import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
 
 
@@ -34,9 +33,8 @@ class MapInvocationHandler<T, C> extends
             final C collectionToProxy,
             final String collectionName,
             final DomainObjectInvocationHandler<T> handler,
-            final RuntimeContext runtimeContext,
             final OneToManyAssociation otma) {
-        super(collectionToProxy, collectionName, handler, runtimeContext, otma);
+        super(collectionToProxy, collectionName, handler, otma);
 
         try {
             intercept(getMethod(collectionToProxy, "containsKey", Object.class));

Modified: incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/Proxy.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/Proxy.java?rev=1051471&r1=1051470&r2=1051471&view=diff
==============================================================================
--- incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/Proxy.java (original)
+++ incubator/isis/trunk/alternatives/progmodel/wrapper/metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/Proxy.java Tue Dec 21 12:06:15 2010
@@ -23,7 +23,10 @@ package org.apache.isis.progmodel.wrappe
 import java.util.Collection;
 import java.util.Map;
 
-import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
+import org.apache.isis.core.metamodel.runtimecontext.AuthenticationSessionProvider;
+import org.apache.isis.core.metamodel.runtimecontext.AdapterMap;
+import org.apache.isis.core.metamodel.runtimecontext.ObjectPersistor;
+import org.apache.isis.core.metamodel.runtimecontext.SpecificationLookup;
 import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
 import org.apache.isis.progmodel.wrapper.applib.WrapperFactory;
 import org.apache.isis.progmodel.wrapper.applib.WrapperFactory.ExecutionMode;
@@ -32,12 +35,15 @@ import org.apache.isis.progmodel.wrapper
 public class Proxy {
 
     public static <T> T proxy(
-            final T toProxy,
+            final T domainObject,
             final WrapperFactory embeddedViewer,
-            final ExecutionMode mode,
-            final RuntimeContext runtimeContext) {
+            final ExecutionMode mode, 
+            final AuthenticationSessionProvider authenticationSessionProvider, 
+            final SpecificationLookup specificationLookup, 
+            final AdapterMap adapterManager,
+            final ObjectPersistor objectPersistor) {
         final DomainObjectInvocationHandler<T> invocationHandler = 
-        	new DomainObjectInvocationHandler<T>(toProxy, embeddedViewer, mode, runtimeContext);
+        	new DomainObjectInvocationHandler<T>(domainObject, embeddedViewer, mode, authenticationSessionProvider, specificationLookup, adapterManager, objectPersistor);
 
         final CgLibProxy<T> cglibProxy = new CgLibProxy<T>(invocationHandler);
         return cglibProxy.proxy();
@@ -50,12 +56,11 @@ public class Proxy {
             final Collection<E> collectionToProxy,
             final String collectionName,
             final DomainObjectInvocationHandler<T> handler,
-            final RuntimeContext runtimeContext,
             final OneToManyAssociation otma) {
 
         final CollectionInvocationHandler<T, Collection<E>> collectionInvocationHandler = 
         	new CollectionInvocationHandler<T, Collection<E>>(
-                collectionToProxy, collectionName, handler, runtimeContext, otma);
+                collectionToProxy, collectionName, handler, otma);
         collectionInvocationHandler.setResolveObjectChangedEnabled(handler.isResolveObjectChangedEnabled());
 
         final CgLibProxy<Collection<E>> cglibProxy = new CgLibProxy<Collection<E>>(collectionInvocationHandler);
@@ -69,11 +74,10 @@ public class Proxy {
             final Map<P, Q> collectionToProxy,
             final String collectionName,
             final DomainObjectInvocationHandler<T> handler,
-            final RuntimeContext runtimeContext,
             final OneToManyAssociation otma) {
 
         final MapInvocationHandler<T, Map<P, Q>> mapInvocationHandler = new MapInvocationHandler<T, Map<P, Q>>(collectionToProxy,
-                collectionName, handler, runtimeContext, otma);
+                collectionName, handler, otma);
         mapInvocationHandler.setResolveObjectChangedEnabled(handler.isResolveObjectChangedEnabled());
 
         final CgLibProxy<Map<P, Q>> cglibProxy = new CgLibProxy<Map<P, Q>>(mapInvocationHandler);



Mime
View raw message