You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2018/05/19 17:13:58 UTC

[isis] branch master updated (43a2034 -> 963c08c)

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git.


    from 43a2034  ISIS-1949: java-doc fix
     new c856eb0  ISIS-1949: Introduces new core project: commons
     new ecc37e5  ISIS-1949: moving Internal API to commons
     new 1fbad8a  ISIS-1949: project agnostic naming for plugin java packages ...
     new 4d2a404  ISIS-1949: deprecating JavassistImposteriser ...
     new 963c08c  ISIS-1949: Aligning Internal API package names with new home 'commons'

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../java/org/apache/isis/applib/util/Clause.java   |  2 +-
 .../isis/applib/util/ObjectContractsLegacy.java    |  8 +--
 ...ectContractsLegacyTest_equals_and_hashCode.java |  2 +-
 core/applib/pom.xml                                |  5 ++
 .../apache/isis/applib/AppManifestAbstract.java    |  4 +-
 .../java/org/apache/isis/applib/Identifier.java    |  4 +-
 .../main/java/org/apache/isis/applib/Module.java   |  6 +-
 .../org/apache/isis/applib/ModuleAbstract.java     |  4 +-
 .../isis/applib/ModuleOrBuilderAbstract.java       |  6 +-
 .../isis/applib/NonRecoverableException.java       |  2 +-
 .../apache/isis/applib/RecoverableException.java   |  4 +-
 .../isis/applib/annotation/MemberGroupLayout.java  |  2 +-
 .../isis/applib/domain/DomainObjectList.java       |  2 +-
 .../applib/events/domain/AbstractDomainEvent.java  |  4 +-
 .../isis/applib/events/ui/AbstractUiEvent.java     |  2 +-
 .../apache/isis/applib/fixtures/LogonFixture.java  |  2 +-
 .../fixturescripts/BuilderScriptAbstract.java      |  2 +-
 .../applib/fixturescripts/ExecutionParameters.java |  6 +-
 .../applib/fixturescripts/FixtureResultList.java   |  6 +-
 .../isis/applib/fixturescripts/FixtureScript.java  | 10 +--
 .../isis/applib/fixturescripts/FixtureScripts.java |  6 +-
 .../setup/PersonaEnumPersistAll.java               |  2 +-
 .../teardown/TeardownFixtureAbstract.java          |  2 +-
 .../teardown/TeardownFixtureAbstract2.java         |  2 +-
 .../applib/internal/exceptions/package-info.java   | 28 --------
 .../applib/internal/functions/package-info.java    | 28 --------
 .../isis/applib/internal/memento/package-info.java | 28 --------
 .../applib/internal/resources/package-info.java    | 28 --------
 .../layout/component/CollectionLayoutData.java     |  2 +-
 .../isis/applib/layout/component/FieldSet.java     |  2 +-
 .../layout/component/PropertyLayoutData.java       |  2 +-
 .../isis/applib/layout/grid/GridAbstract.java      |  4 +-
 .../isis/applib/layout/grid/bootstrap3/BS3Col.java |  2 +-
 .../applib/layout/grid/bootstrap3/BS3Grid.java     |  4 +-
 .../isis/applib/layout/grid/bootstrap3/BS3Row.java |  2 +-
 .../isis/applib/layout/grid/bootstrap3/BS3Tab.java |  2 +-
 .../applib/layout/grid/bootstrap3/BS3TabGroup.java |  2 +-
 .../applib/layout/menubars/MenuBarsAbstract.java   |  2 +-
 .../applib/layout/menubars/bootstrap3/BS3Menu.java |  2 +-
 .../layout/menubars/bootstrap3/BS3MenuBar.java     |  2 +-
 .../layout/menubars/bootstrap3/BS3MenuBars.java    |  2 +-
 .../layout/menubars/bootstrap3/BS3MenuSection.java |  2 +-
 .../isis/applib/mixins/dto/DtoMappingHelper.java   |  2 +-
 .../mixins/layout/Object_downloadLayoutXml.java    |  2 +-
 .../applib/mixins/layout/Object_openRestApi.java   |  2 +-
 .../apache/isis/applib/query/QueryAbstract.java    |  2 +-
 .../services/appfeat/ApplicationMemberType.java    |  2 +-
 .../isis/applib/services/bookmark/Bookmark.java    |  4 +-
 .../applib/services/bookmark/BookmarkService.java  |  2 +-
 .../ClassDiscoveryServiceDefault.java              |  4 +-
 .../applib/services/command/CommandDefault.java    |  4 +-
 .../services/config/ConfigurationProperty.java     |  6 +-
 .../services/conmap/ContentMappingService.java     |  2 +-
 .../services/eventbus/EventBusImplementation.java  |  2 +-
 .../applib/services/eventbus/EventBusService.java  |  2 +-
 .../exceprecog/ExceptionRecognizerAbstract.java    |  2 +-
 .../exceprecog/ExceptionRecognizerComposite.java   |  2 +-
 .../exceprecog/ExceptionRecognizerForType.java     |  2 +-
 ...eptionRecognizerCompositeForJdoObjectStore.java |  2 +-
 .../applib/services/hsqldb/HsqlDbManagerMenu.java  |  4 +-
 .../applib/services/i18n/TranslatableString.java   |  2 +-
 .../isis/applib/services/iactn/Interaction.java    |  4 +-
 .../jaxb/CatalogingSchemaOutputResolver.java       |  4 +-
 .../isis/applib/services/jaxb/JaxbService.java     |  6 +-
 .../applib/services/layout/LayoutServiceMenu.java  |  2 +-
 .../services/metamodel/MetaModelServicesMenu.java  |  2 +-
 .../QueryResultsCacheInternal.java                 |  4 +-
 .../applib/services/scratchpad/Scratchpad.java     |  2 +-
 .../services/swagger/SwaggerServiceMenu.java       |  2 +-
 .../services/urlencoding/UrlEncodingService.java   | 11 +---
 ...rlEncodingServiceUsingBaseEncodingAbstract.java |  4 +-
 .../UrlEncodingServiceWithCompression.java         |  4 +-
 .../isis/applib/spec/AbstractSpecification2.java   |  2 +-
 .../org/apache/isis/applib/tree/LazyTreeNode.java  |  4 +-
 .../java/org/apache/isis/applib/tree/TreeNode.java |  2 +-
 .../java/org/apache/isis/applib/util/Enums.java    |  2 +-
 .../java/org/apache/isis/applib/util/Equality.java |  4 +-
 .../java/org/apache/isis/applib/util/Hashing.java  |  2 +-
 .../java/org/apache/isis/applib/util/JaxbUtil.java |  6 +-
 .../isis/applib/util/ObjectContract_Parser.java    |  4 +-
 .../apache/isis/applib/util/ObjectContracts.java   |  4 +-
 .../org/apache/isis/applib/util/TitleBuffer.java   |  2 +-
 .../java/org/apache/isis/applib/util/ToString.java |  2 +-
 .../apache/isis/schema/utils/ChangesDtoUtils.java  |  3 +-
 .../apache/isis/schema/utils/CommandDtoUtils.java  |  2 +-
 .../apache/isis/schema/utils/CommonDtoUtils.java   | 12 ++--
 .../isis/schema/utils/InteractionDtoUtils.java     |  6 +-
 .../isis/schema/utils/MemberExecutionDtoUtils.java |  2 +-
 .../jaxbadapters/PersistentEntitiesAdapter.java    |  2 +-
 .../Module_Util_transitiveDependenciesOf_Test.java |  4 +-
 .../isis/applib/internal/base/BytesTest.java       |  4 +-
 .../isis/applib/internal/base/NullSafeTest.java    |  2 +
 .../isis/applib/internal/base/ReductionTest.java   |  3 +-
 .../isis/applib/internal/base/StringsTest.java     |  4 +-
 .../applib/internal/compare/ComparatorsTest.java   |  3 +-
 .../isis/applib/internal/memento/MementosTest.java |  7 +-
 ...onRecognizerCompositeForJdoObjectStoreTest.java |  2 +-
 .../XmlSnapshotServiceAbstractTest.java            |  2 +-
 .../ObjectContractsTest_equals_and_hashCode.java   |  2 +-
 .../.gitignore                                     |  0
 core/commons/pom.xml                               | 70 ++++++++++++++++++++
 .../apache/isis/commons}/internal/_Constants.java  |  2 +-
 .../apache/isis/commons}/internal/base/_Bytes.java |  2 +-
 .../internal/base/_Bytes_GZipCompressor.java       |  2 +-
 .../internal/base/_Bytes_GZipCompressorSmart.java  |  4 +-
 .../apache/isis/commons}/internal/base/_Casts.java |  2 +-
 .../apache/isis/commons}/internal/base/_Lazy.java  |  2 +-
 .../isis/commons}/internal/base/_NullSafe.java     |  2 +-
 .../isis/commons}/internal/base/_Reduction.java    |  2 +-
 .../isis/commons}/internal/base/_Strings.java      |  8 +--
 .../internal/base/_Strings_NaturalNames.java       |  2 +-
 .../internal/base/_Strings_SplitIterator.java      |  2 +-
 .../isis/commons}/internal/base/package-info.java  |  2 +-
 .../commons}/internal/collections/_Arrays.java     |  8 +--
 .../internal/collections/_Arrays_Collector.java    |  4 +-
 .../collections/_Arrays_CollectorUnknownSize.java  |  4 +-
 .../internal/collections/_Collections.java         |  4 +-
 .../collections/_Collections_Collector.java        |  2 +-
 .../collections/_Collections_SortedSetOfList.java  |  2 +-
 .../isis/commons}/internal/collections/_Lists.java |  4 +-
 .../isis/commons}/internal/collections/_Maps.java  |  2 +-
 .../commons}/internal/collections/_Multimaps.java  |  2 +-
 .../isis/commons}/internal/collections/_Sets.java  |  4 +-
 .../internal/collections}/package-info.java        |  2 +-
 .../commons}/internal/compare/_Comparators.java    |  2 +-
 .../compare/_Comparators_SequenceCompare.java      |  4 +-
 .../commons}/internal/compare/package-info.java    |  2 +-
 .../isis/commons}/internal/context/_Context.java   | 14 ++--
 .../isis/commons}/internal/context/_Plugin.java    | 16 ++---
 .../commons}/internal/context/package-info.java    |  2 +-
 .../isis/commons}/internal/discover/_Discover.java |  8 +--
 .../commons/internal/discover}/package-info.java   |  2 +-
 .../commons}/internal/exceptions/_Exceptions.java  |  6 +-
 .../commons/internal/exceptions}/package-info.java |  2 +-
 .../commons}/internal/functions/_Functions.java    |  2 +-
 .../_Functions_IndexAwareFunctionAdapter.java      |  4 +-
 .../commons/internal/functions}/package-info.java  |  2 +-
 .../isis/commons}/internal/memento/_Mementos.java  | 17 +++--
 .../internal/memento/_Mementos_MementoDefault.java | 26 ++++----
 .../commons/internal/memento}/package-info.java    |  2 +-
 .../isis/commons}/internal/package-info.java       |  2 +-
 .../commons}/internal/resources/_Resource.java     |  8 +--
 .../internal/resources/_Resource_ContextPath.java  |  2 +-
 .../internal/resources/_Resource_Path.java         |  4 +-
 .../internal/resources/_Resource_RestfulPath.java  |  2 +-
 .../commons/internal/resources}/package-info.java  |  2 +-
 .../isis/core/plugins/PluginResolveException.java  | 19 ++++++
 .../plugins/classdiscovery/ClassDiscovery.java     |  2 +-
 .../classdiscovery/ClassDiscoveryPlugin.java       |  2 +-
 .../isis/core}/plugins/codegen/ProxyFactory.java   |  2 +-
 .../core}/plugins/codegen/ProxyFactoryPlugin.java  |  4 +-
 .../integtestsupport/IntegrationTestAbstract.java  |  2 +-
 .../integtestsupport/IntegrationTestAbstract3.java |  2 +-
 .../core/integtestsupport/IsisSystemForTest.java   |  4 +-
 .../core/integtestsupport/ThrowableMatchers.java   |  2 +-
 .../scenarios/ObjectFactoryForIntegration.java     |  2 +-
 .../RepositoryServiceLegacyInternalDefault.java    |  2 +-
 .../isis/core/commons/encoding/FieldType.java      |  2 +-
 .../core/commons/exceptions/ExceptionUtils.java    |  2 +-
 .../isis/core/commons/factory/InstanceUtil.java    |  2 +-
 .../apache/isis/core/commons/lang/ClassUtil.java   |  2 +-
 .../commons/lang/MethodInvocationPreprocessor.java |  8 +--
 .../isis/core/commons/lang/ObjectExtensions.java   |  2 +-
 .../isis/core/commons/lang/ResourceUtil.java       |  2 +-
 .../isis/core/commons/lang/StringExtensions.java   |  2 +-
 ...ResourceStreamSourceContextLoaderClassPath.java |  2 +-
 .../core/metamodel/IsisJdoMetamodelPlugin.java     |  2 +-
 .../isis/core/metamodel/adapter/ObjectAdapter.java |  2 +-
 .../isis/core/metamodel/adapter/oid/Oid.java       |  2 +-
 .../isis/core/metamodel/facetapi/FacetUtil.java    |  4 +-
 .../core/metamodel/facets/CollectionUtils.java     | 10 +--
 .../isis/core/metamodel/facets/FacetedMethod.java  |  2 +-
 ...rCollectionIdentifyingFacetFactoryAbstract.java |  2 +-
 .../facets/actcoll/typeof/TypeOfFacet.java         |  4 +-
 .../action/ActionAnnotationFacetFactory.java       |  2 +-
 ...ctionInvocationFacetForDomainEventAbstract.java |  2 +-
 .../actions/action/invocation/CommandUtil.java     |  4 +-
 .../ActionDefaultsFacetViaMethodFactory.java       |  2 +-
 .../CollectionAccessorFacetViaAccessor.java        |  2 +-
 .../CollectionAnnotationFacetFactory.java          |  2 +-
 .../javautilcollection/CollectionFacetFactory.java |  4 +-
 .../choices/ChoicesFacetFromBoundedAbstract.java   |  4 +-
 .../AuditableFacetForDomainObjectAnnotation.java   |  2 +-
 ...lishedObjectFacetForDomainObjectAnnotation.java |  2 +-
 .../domainservice/DomainServiceMenuOrder.java      |  2 +-
 .../ignore/javalang/RemoveMethodsFacetFactory.java |  2 +-
 .../MemberGroupLayoutFacetProperties.java          |  2 +-
 .../NavigableParentAnnotationFacetFactory.java     |  2 +-
 ...ObjectFacetDeclarativeInitializingAbstract.java |  4 +-
 .../ActionParameterAutoCompleteFacetViaMethod.java |  4 +-
 ...rameterChoicesFacetDerivedFromChoicesFacet.java |  2 +-
 .../method/ActionChoicesFacetViaMethod.java        |  2 +-
 .../method/ActionChoicesFacetViaMethodFactory.java |  2 +-
 .../ActionParameterChoicesFacetViaMethod.java      |  4 +-
 ...cetInvertedByNullableAnnotationOnParameter.java |  2 +-
 .../method/PropertyAutoCompleteFacetMethod.java    |  2 +-
 ...ropertyChoicesFacetDerivedFromChoicesFacet.java |  2 +-
 .../ValueSemanticsProviderAbstractTemporal.java    |  2 +-
 .../JavaSqlTimeStampValueSemanticsProvider.java    |  2 +-
 .../treenode/TreeNodeValueSemanticsProvider.java   |  6 +-
 .../MemberOrderFacetComparator.java                |  2 +-
 .../progmodel/ProgrammingModelPlugin.java          |  4 +-
 .../core/metamodel/services/ServicesInjector.java  | 12 ++--
 .../bookmarks/BookmarkServiceInternalDefault.java  |  8 +--
 .../config/ConfigurationServiceDefault.java        |  6 +-
 .../factory/FactoryServiceInternalDefault.java     |  2 +-
 .../services/grid/GridLoaderServiceDefault.java    |  2 +-
 .../RepositoryServiceInternalDefault.java          |  2 +-
 .../services/swagger/SwaggerServiceDefault.java    |  4 +-
 .../swagger/internal/ValuePropertyFactory.java     |  2 +-
 .../swagger/internal/ValuePropertyPlugin.java      |  2 +-
 .../core/metamodel/spec/feature/ObjectAction.java  |  4 +-
 .../core/metamodel/specloader/CollectionUtils.java |  4 +-
 .../specloader/specimpl/ObjectActionDefault.java   |  4 +-
 .../specimpl/OneToOneAssociationDefault.java       |  2 +-
 .../core/metamodel/util/DeweyOrderComparator.java  |  2 +-
 .../core/runtime/threadpool/ThreadPoolSupport.java |  4 +-
 .../dflt/ProgrammingModelFacetsJava5.java          |  2 +-
 .../apache/isis/core/metamodel/facets/Utils.java   |  2 +-
 .../codegen/ProxyFactoryPluginUsingByteBuddy.java  |  6 +-
 ...he.isis.core.plugins.codegen.ProxyFactoryPlugin |  1 +
 ...core.runtime.plugins.codegen.ProxyFactoryPlugin |  1 -
 .../codegen/ProxyFactoryPluginUsingJavassist.java  | 10 +--
 ...e.isis.core.plugins.codegen.ProxyFactoryPlugin} |  0
 .../ClassDiscoveryPluginUsingReflections.java      |  8 +--
 .../reflections/ReflectDiscovery.java              |  6 +-
 .../reflections/ReflectManifest.java               |  2 +-
 ...lib.plugins.classdiscovery.ClassDiscoveryPlugin |  1 -
 ...ore.plugins.classdiscovery.ClassDiscoveryPlugin |  1 +
 .../system/persistence/PersistenceSession4.java    |  4 +-
 .../persistence/spi/JdoObjectIdSerializer.java     |  2 +-
 .../system/persistence/PersistenceSession5.java    |  6 +-
 .../persistence/spi/JdoObjectIdSerializer.java     |  2 +-
 core/pom.xml                                       |  7 ++
 .../isis/core/metamodel/IsisJdoRuntimePlugin.java  |  2 +-
 .../apache/isis/core/runtime/memento/Memento.java  |  2 +-
 .../core/runtime/services/ServiceInstantiator.java |  4 +-
 .../services/ServicesInstallerFromAnnotation.java  |  4 +-
 .../background/BackgroundServiceDefault.java       |  6 +-
 .../core/runtime/system/context/IsisContext.java   |  2 +-
 .../system/persistence/PersistenceSessionBase.java |  4 +-
 .../system/session/IsisSessionFactoryBuilder.java  |  2 +-
 .../IsisComponentProvider.java                     |  4 +-
 .../PersistenceCapableTypeFinder.java              |  4 +-
 .../scenarios/ScenarioExecutionScope.java          |  2 +-
 .../core/specsupport/specs/CukeGlueAbstract.java   |  2 +-
 core/unittestsupport/pom.xml                       |  6 ++
 ...er.java => ImposteriserUsingCodegenPlugin.java} | 75 +++++-----------------
 .../jmocking/JavassistImposteriser.java            |  5 ++
 .../restfulobjects/applib/JsonRepresentation.java  |  6 +-
 .../applib/client/RestfulResponse.java             |  2 +-
 .../applib/client/UriBuilderPlugin.java            |  2 +-
 .../restfulobjects/applib/util/MediaTypes.java     |  2 +-
 .../viewer/restfulobjects/applib/util/Parser.java  |  8 +--
 .../restfulobjects/applib/util/PathNode.java       |  6 +-
 .../applib/util/UrlEncodingUtils.java              |  4 +-
 .../server/IsisJaxrsServerPlugin.java              |  2 +-
 .../server/RestfulObjectsApplication.java          |  2 +-
 .../wicket/viewer/IsisWicketApplication.java       |  6 +-
 .../ComponentFactoryRegistrarDefault.java          |  2 +-
 .../model/mementos/ObjectAdapterMemento.java       |  2 +-
 .../viewer/wicket/model/models/ActionModel.java    |  2 +-
 .../wicket/model/models/EntityCollectionModel.java |  6 +-
 .../viewer/wicket/model/models/ScalarModel.java    |  2 +-
 .../isis/viewer/wicket/model/models/Util.java      |  2 +-
 .../wicket/model/models/WicketComponentUtils.java  |  2 +-
 .../ui/components/about/JarManifestModel.java      |  2 +-
 .../collection/bulk/BulkActionsLinkFactory.java    |  4 +-
 .../wicket/ui/components/layout/bs3/col/Col.java   |  2 +-
 .../components/layout/bs3/tabs/TabGroupPanel.java  |  2 +-
 .../components/scalars/IsisConverterLocator.java   |  6 +-
 .../scalars/reference/ReferencePanel.java          |  2 +-
 .../valuechoices/ValueChoicesSelect2Panel.java     |  2 +-
 .../components/tree/IsisToWicketTreeAdapter.java   |  4 +-
 .../ui/components/widgets/navbar/Placement.java    |  2 +-
 ...entoProviderForReferenceObjectAutoComplete.java |  2 +-
 ...derForReferenceParamOrPropertyAutoComplete.java |  2 +-
 .../handlers/DomainObjectInvocationHandler.java    |  2 +-
 .../isis/core/wrapper/proxy/ProxyCreator.java      |  6 +-
 279 files changed, 588 insertions(+), 621 deletions(-)
 delete mode 100644 core/applib/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java
 delete mode 100644 core/applib/src/main/java/org/apache/isis/applib/internal/functions/package-info.java
 delete mode 100644 core/applib/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
 delete mode 100644 core/applib/src/main/java/org/apache/isis/applib/internal/resources/package-info.java
 copy core/{viewer-wicket-ui-legacy => commons}/.gitignore (100%)
 create mode 100644 core/commons/pom.xml
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/_Constants.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Bytes.java (99%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Bytes_GZipCompressor.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Bytes_GZipCompressorSmart.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Casts.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Lazy.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_NullSafe.java (99%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Reduction.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Strings.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Strings_NaturalNames.java (98%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/_Strings_SplitIterator.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/base/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Arrays.java (96%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Arrays_Collector.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Arrays_CollectorUnknownSize.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Collections.java (98%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Collections_Collector.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Collections_SortedSetOfList.java (98%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Lists.java (97%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Maps.java (98%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Multimaps.java (99%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/collections/_Sets.java (98%)
 copy core/{applib/src/main/java/org/apache/isis/applib/internal/compare => commons/src/main/java/org/apache/isis/commons/internal/collections}/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/compare/_Comparators.java (96%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/compare/_Comparators_SequenceCompare.java (97%)
 copy core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/compare/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/context/_Context.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/context/_Plugin.java (89%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/context/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/discover/_Discover.java (89%)
 copy core/{applib/src/main/java/org/apache/isis/applib/internal/compare => commons/src/main/java/org/apache/isis/commons/internal/discover}/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/exceptions/_Exceptions.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib/internal/collections => commons/src/main/java/org/apache/isis/commons/internal/exceptions}/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/functions/_Functions.java (96%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/functions/_Functions_IndexAwareFunctionAdapter.java (91%)
 copy core/{applib/src/main/java/org/apache/isis/applib/internal/compare => commons/src/main/java/org/apache/isis/commons/internal/functions}/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/memento/_Mementos.java (91%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/memento/_Mementos_MementoDefault.java (81%)
 rename core/{applib/src/main/java/org/apache/isis/applib/internal/discover => commons/src/main/java/org/apache/isis/commons/internal/memento}/package-info.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/package-info.java (96%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/resources/_Resource.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/resources/_Resource_ContextPath.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/resources/_Resource_Path.java (94%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/commons}/internal/resources/_Resource_RestfulPath.java (95%)
 rename core/{applib/src/main/java/org/apache/isis/applib/internal/compare => commons/src/main/java/org/apache/isis/commons/internal/resources}/package-info.java (95%)
 create mode 100644 core/commons/src/main/java/org/apache/isis/core/plugins/PluginResolveException.java
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/core}/plugins/classdiscovery/ClassDiscovery.java (96%)
 rename core/{applib/src/main/java/org/apache/isis/applib => commons/src/main/java/org/apache/isis/core}/plugins/classdiscovery/ClassDiscoveryPlugin.java (97%)
 rename core/{runtime/src/main/java/org/apache/isis/core/runtime => commons/src/main/java/org/apache/isis/core}/plugins/codegen/ProxyFactory.java (98%)
 rename core/{runtime/src/main/java/org/apache/isis/core/runtime => commons/src/main/java/org/apache/isis/core}/plugins/codegen/ProxyFactoryPlugin.java (93%)
 rename core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/{runtime => }/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java (64%)
 create mode 100644 core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin
 delete mode 100644 core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
 rename core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/{runtime => }/plugins/codegen/ProxyFactoryPluginUsingJavassist.java (91%)
 rename core/plugins/codegen-javassist/src/main/resources/META-INF/services/{org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin => org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin} (100%)
 rename core/plugins/discovery-reflections/src/main/java/org/apache/isis/{applib => core}/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java (79%)
 rename core/plugins/discovery-reflections/src/main/java/org/apache/isis/{applib => core}/plugins/classdiscovery/reflections/ReflectDiscovery.java (91%)
 rename core/plugins/discovery-reflections/src/main/java/org/apache/isis/{applib => core}/plugins/classdiscovery/reflections/ReflectManifest.java (98%)
 delete mode 100644 core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin
 create mode 100644 core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin
 copy core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/{JavassistImposteriser.java => ImposteriserUsingCodegenPlugin.java} (53%)

-- 
To stop receiving notification emails like this one, please contact
ahuber@apache.org.

[isis] 02/05: ISIS-1949: moving Internal API to commons

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit ecc37e51c73cb6a5bd3bf993acf6280f78a04be1
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat May 19 18:44:50 2018 +0200

    ISIS-1949: moving Internal API to commons
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1949
---
 .../services/urlencoding/UrlEncodingService.java      |  9 ++-------
 .../org/apache/isis/applib/internal/_Constants.java   |  0
 .../org/apache/isis/applib/internal/base/_Bytes.java  |  0
 .../applib/internal/base/_Bytes_GZipCompressor.java   |  0
 .../internal/base/_Bytes_GZipCompressorSmart.java     |  0
 .../org/apache/isis/applib/internal/base/_Casts.java  |  0
 .../org/apache/isis/applib/internal/base/_Lazy.java   |  0
 .../apache/isis/applib/internal/base/_NullSafe.java   |  0
 .../apache/isis/applib/internal/base/_Reduction.java  |  0
 .../apache/isis/applib/internal/base/_Strings.java    |  0
 .../applib/internal/base/_Strings_NaturalNames.java   |  0
 .../applib/internal/base/_Strings_SplitIterator.java  |  0
 .../isis/applib/internal/base/package-info.java       |  0
 .../isis/applib/internal/collections/_Arrays.java     |  0
 .../internal/collections/_Arrays_Collector.java       |  0
 .../collections/_Arrays_CollectorUnknownSize.java     |  0
 .../applib/internal/collections/_Collections.java     |  0
 .../internal/collections/_Collections_Collector.java  |  0
 .../collections/_Collections_SortedSetOfList.java     |  0
 .../isis/applib/internal/collections/_Lists.java      |  0
 .../isis/applib/internal/collections/_Maps.java       |  0
 .../isis/applib/internal/collections/_Multimaps.java  |  0
 .../isis/applib/internal/collections/_Sets.java       |  0
 .../applib/internal/collections/package-info.java     |  0
 .../isis/applib/internal/compare/_Comparators.java    |  0
 .../compare/_Comparators_SequenceCompare.java         |  0
 .../isis/applib/internal/compare/package-info.java    |  0
 .../apache/isis/applib/internal/context/_Context.java |  6 ++----
 .../apache/isis/applib/internal/context/_Plugin.java  | 10 +++++-----
 .../isis/applib/internal/context/package-info.java    |  0
 .../isis/applib/internal/discover/_Discover.java      |  0
 .../isis/applib/internal/discover/package-info.java   |  0
 .../isis/applib/internal/exceptions/_Exceptions.java  |  0
 .../isis/applib/internal/exceptions/package-info.java |  0
 .../isis/applib/internal/functions/_Functions.java    |  0
 .../_Functions_IndexAwareFunctionAdapter.java         |  0
 .../isis/applib/internal/functions/package-info.java  |  0
 .../isis/applib/internal/memento/_Mementos.java       | 15 +++++++++++----
 .../internal/memento/_Mementos_MementoDefault.java    | 10 +++++-----
 .../isis/applib/internal/memento/package-info.java    |  0
 .../org/apache/isis/applib/internal/package-info.java |  0
 .../isis/applib/internal/resources/_Resource.java     |  0
 .../internal/resources/_Resource_ContextPath.java     |  0
 .../applib/internal/resources/_Resource_Path.java     |  0
 .../internal/resources/_Resource_RestfulPath.java     |  0
 .../isis/applib/internal/resources/package-info.java  |  0
 .../applib/plugins/classdiscovery/ClassDiscovery.java |  0
 .../plugins/classdiscovery/ClassDiscoveryPlugin.java  |  0
 .../isis/commons/plugins/PluginResolveException.java  | 19 +++++++++++++++++++
 .../core/runtime/plugins/codegen/ProxyFactory.java    |  0
 .../runtime/plugins/codegen/ProxyFactoryPlugin.java   |  0
 51 files changed, 44 insertions(+), 25 deletions(-)

diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
index 6754532..4e3d978 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
@@ -20,14 +20,9 @@ import java.nio.charset.StandardCharsets;
 
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.applib.internal.memento._Mementos.EncoderDecoder;
 
-public interface UrlEncodingService {
-
-    @Programmatic
-    public String encode(final byte[] bytes);
-
-    @Programmatic
-    public byte[] decode(String str);
+public interface UrlEncodingService extends EncoderDecoder {
 
     @Programmatic
     public default String encodeString(final String str) {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/_Constants.java b/core/commons/src/main/java/org/apache/isis/applib/internal/_Constants.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/_Constants.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/_Constants.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Bytes.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Bytes.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressor.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressor.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressor.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressor.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressorSmart.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressorSmart.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressorSmart.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressorSmart.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Lazy.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Lazy.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Lazy.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Lazy.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Reduction.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Reduction.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Reduction.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Reduction.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Strings.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Strings.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Strings_NaturalNames.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_NaturalNames.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Strings_NaturalNames.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_NaturalNames.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Strings_SplitIterator.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_SplitIterator.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Strings_SplitIterator.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_SplitIterator.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/base/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Arrays.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Arrays.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_Collector.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_Collector.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_Collector.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_Collector.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_CollectorUnknownSize.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_CollectorUnknownSize.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_CollectorUnknownSize.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_CollectorUnknownSize.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Collections.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Collections.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Collections_Collector.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_Collector.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Collections_Collector.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_Collector.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Collections_SortedSetOfList.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_SortedSetOfList.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Collections_SortedSetOfList.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_SortedSetOfList.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Lists.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Lists.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Lists.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Lists.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Maps.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Maps.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Maps.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Maps.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Multimaps.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Multimaps.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Multimaps.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Multimaps.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Sets.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Sets.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/_Sets.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Sets.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/collections/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/collections/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/collections/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/collections/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/compare/_Comparators.java b/core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/compare/_Comparators.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/compare/_Comparators_SequenceCompare.java b/core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators_SequenceCompare.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/compare/_Comparators_SequenceCompare.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators_SequenceCompare.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/compare/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/compare/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/compare/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/compare/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/context/_Context.java b/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Context.java
similarity index 98%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/context/_Context.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/context/_Context.java
index 93bf27c..953a7b5 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/context/_Context.java
+++ b/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Context.java
@@ -26,8 +26,6 @@ import java.util.Objects;
 import java.util.function.Function;
 import java.util.function.Supplier;
 
-import javax.validation.constraints.NotNull;
-
 import org.apache.isis.applib.internal.base._Casts;
 import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.internal.collections._Lists;
@@ -199,9 +197,9 @@ public final class _Context {
 	
 	/**
 	 * As set by the framework's bootstrapping mechanism.
-	 * @return the default class loader
+	 * @return the default class loader (non-null)
 	 */
-	public static @NotNull ClassLoader getDefaultClassLoader() {
+	public static ClassLoader getDefaultClassLoader() {
 		return getOrElse(ClassLoader.class, FALLBACK_CLASSLOADER);
 	}
 	
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java b/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
similarity index 93%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
index e0ba274..89da112 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
+++ b/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
@@ -26,9 +26,9 @@ import java.util.function.Function;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.NonRecoverableException;
 import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.commons.plugins.PluginResolveException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -119,11 +119,11 @@ public final class _Plugin {
 	
 	// -- CONVENIENT EXCEPTION FACTORIES
 
-	public static <T> NonRecoverableException ambiguityNonRecoverable(
+	public static <T> PluginResolveException ambiguityNonRecoverable(
 			Class<T> pluginInterfaceClass, 
 			Set<? extends T> ambiguousPlugins) {
 		
-		return new NonRecoverableException(
+		return new PluginResolveException(
 				String.format("Ambiguous plugins implementing %s found on class path.\n{%s}", 
 						pluginInterfaceClass.getName(),
 						
@@ -135,9 +135,9 @@ public final class _Plugin {
 						));
 	}
 
-	public static NonRecoverableException absenceNonRecoverable(Class<?> pluginInterfaceClass) {
+	public static PluginResolveException absenceNonRecoverable(Class<?> pluginInterfaceClass) {
 		
-		return new NonRecoverableException(
+		return new PluginResolveException(
 				String.format("No plugin implementing %s found on class path.", 
 						pluginInterfaceClass.getName() ));
 	}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/context/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/context/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/context/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/context/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java b/core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/discover/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/discover/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/discover/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/discover/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/exceptions/_Exceptions.java b/core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/_Exceptions.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/exceptions/_Exceptions.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/_Exceptions.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/functions/_Functions.java b/core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/functions/_Functions.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/functions/_Functions_IndexAwareFunctionAdapter.java b/core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions_IndexAwareFunctionAdapter.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/functions/_Functions_IndexAwareFunctionAdapter.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions_IndexAwareFunctionAdapter.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/functions/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/functions/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/functions/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/functions/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java b/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
similarity index 92%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
index f3703bc..17d991e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
+++ b/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
@@ -22,12 +22,12 @@ package org.apache.isis.applib.internal.memento;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 import java.io.Serializable;
+import java.util.HashMap;
+import java.util.Map;
 import java.util.Set;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
-
 /**
  * <h1>- internal use only -</h1>
  * <p>
@@ -44,6 +44,13 @@ public final class _Mementos {
 
 	private _Mementos(){}
 	
+	// -- ENCODE-DECODER INTERFACE
+	
+	public static interface EncoderDecoder {
+		public String encode(final byte[] bytes);
+	    public byte[] decode(String str);
+	}
+	
 	// -- MEMENTO INTERFACE
 	
 	/**
@@ -120,7 +127,7 @@ public final class _Mementos {
      * @param serializer (required)
      * @return non-null
      */
-    public static Memento create(UrlEncodingService codec, SerializingAdapter serializer) {
+    public static Memento create(EncoderDecoder codec, SerializingAdapter serializer) {
     	return new _Mementos_MementoDefault(codec, serializer);
     }
 
@@ -141,7 +148,7 @@ public final class _Mementos {
      * 
      */
     public static @Nullable Memento parse(
-    		final UrlEncodingService codec, 
+    		final EncoderDecoder codec, 
     		final SerializingAdapter serializer, 
     		final String input) {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java b/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
similarity index 92%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
index deb3af0..0e1fe85 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
+++ b/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
@@ -37,9 +37,9 @@ import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.internal.collections._Sets;
 import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.applib.internal.memento._Mementos.EncoderDecoder;
 import org.apache.isis.applib.internal.memento._Mementos.Memento;
 import org.apache.isis.applib.internal.memento._Mementos.SerializingAdapter;
-import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
 
 /**
  * 
@@ -50,17 +50,17 @@ import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
  */
 class _Mementos_MementoDefault implements _Mementos.Memento {
 	
-	private final UrlEncodingService codec;
+	private final EncoderDecoder codec;
 	private final SerializingAdapter serializer;
 	
 	private final Map<String, Serializable> valuesByKey;
 	
-	_Mementos_MementoDefault(UrlEncodingService codec, SerializingAdapter serializer) {
+	_Mementos_MementoDefault(EncoderDecoder codec, SerializingAdapter serializer) {
 		this(codec, serializer, _Maps.newHashMap());
 	}
 	
 	private _Mementos_MementoDefault(
-			UrlEncodingService codec,
+			EncoderDecoder codec,
 			SerializingAdapter serializer,
 			Map<String, Serializable> valuesByKey) {
 		
@@ -106,7 +106,7 @@ class _Mementos_MementoDefault implements _Mementos.Memento {
 
 	// -- PARSER
 	
-	static Memento parse(UrlEncodingService codec, SerializingAdapter serializer, @Nullable String str) {
+	static Memento parse(EncoderDecoder codec, SerializingAdapter serializer, @Nullable String str) {
 		Objects.requireNonNull(codec);
 		if(_NullSafe.isEmpty(str)) {
 			return null;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/memento/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource.java b/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource_ContextPath.java b/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_ContextPath.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource_ContextPath.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_ContextPath.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource_Path.java b/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_Path.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource_Path.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_Path.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource_RestfulPath.java b/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_RestfulPath.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/resources/_Resource_RestfulPath.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_RestfulPath.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/resources/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/resources/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/internal/resources/package-info.java
rename to core/commons/src/main/java/org/apache/isis/applib/internal/resources/package-info.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscovery.java b/core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscovery.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscovery.java
rename to core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscovery.java
diff --git a/core/applib/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscoveryPlugin.java b/core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscoveryPlugin.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscoveryPlugin.java
rename to core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscoveryPlugin.java
diff --git a/core/commons/src/main/java/org/apache/isis/commons/plugins/PluginResolveException.java b/core/commons/src/main/java/org/apache/isis/commons/plugins/PluginResolveException.java
new file mode 100644
index 0000000..3f39581
--- /dev/null
+++ b/core/commons/src/main/java/org/apache/isis/commons/plugins/PluginResolveException.java
@@ -0,0 +1,19 @@
+package org.apache.isis.commons.plugins;
+
+public class PluginResolveException extends RuntimeException {
+    
+    private static final long serialVersionUID = 1L;
+
+    public PluginResolveException(final String msg) {
+        super(msg);
+    }
+
+    public PluginResolveException(final Throwable cause) {
+    	super(cause);
+    }
+    
+    public PluginResolveException(final String msg, final Throwable cause) {
+        super(msg, cause);
+    }
+
+}
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactory.java b/core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactory.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactory.java
rename to core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactory.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPlugin.java b/core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPlugin.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPlugin.java
rename to core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPlugin.java

-- 
To stop receiving notification emails like this one, please contact
ahuber@apache.org.

[isis] 03/05: ISIS-1949: project agnostic naming for plugin java packages ...

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 1fbad8ae6529fd8d1670700569da1878f0b4fa12
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat May 19 18:54:38 2018 +0200

    ISIS-1949: project agnostic naming for plugin java packages ...
    
    ... org.apache.isis.core.plugins.*
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1949
---
 .../main/java/org/apache/isis/applib/internal/context/_Plugin.java  | 2 +-
 .../java/org/apache/isis/applib/internal/discover/_Discover.java    | 4 ++--
 .../isis/{commons => core}/plugins/PluginResolveException.java      | 2 +-
 .../{applib => core}/plugins/classdiscovery/ClassDiscovery.java     | 2 +-
 .../plugins/classdiscovery/ClassDiscoveryPlugin.java                | 2 +-
 .../isis/core/{runtime => }/plugins/codegen/ProxyFactory.java       | 2 +-
 .../isis/core/{runtime => }/plugins/codegen/ProxyFactoryPlugin.java | 2 +-
 .../plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java           | 4 +++-
 .../org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin         | 1 +
 .../org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin | 1 -
 .../plugins/codegen/ProxyFactoryPluginUsingJavassist.java           | 4 +++-
 ...ugin => org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin} | 0
 .../reflections/ClassDiscoveryPluginUsingReflections.java           | 6 +++---
 .../plugins/classdiscovery/reflections/ReflectDiscovery.java        | 4 ++--
 .../plugins/classdiscovery/reflections/ReflectManifest.java         | 2 +-
 ...g.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin | 1 -
 ...org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin | 1 +
 .../org/apache/isis/core/runtime/services/ServiceInstantiator.java  | 2 +-
 .../isis/core/runtime/services/ServicesInstallerFromAnnotation.java | 2 +-
 .../core/runtime/services/background/BackgroundServiceDefault.java  | 2 +-
 .../core/runtime/systemusinginstallers/IsisComponentProvider.java   | 2 +-
 .../runtime/systemusinginstallers/PersistenceCapableTypeFinder.java | 2 +-
 .../main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java  | 2 +-
 23 files changed, 28 insertions(+), 24 deletions(-)

diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java b/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
index 89da112..b328945 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
+++ b/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
@@ -28,7 +28,7 @@ import java.util.stream.Collectors;
 
 import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.internal.collections._Sets;
-import org.apache.isis.commons.plugins.PluginResolveException;
+import org.apache.isis.core.plugins.PluginResolveException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java b/core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
index d9b0c32..7593f27 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
+++ b/core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
@@ -22,8 +22,8 @@ package org.apache.isis.applib.internal.discover;
 import java.util.List;
 
 import org.apache.isis.applib.internal.context._Plugin;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscovery;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/commons/src/main/java/org/apache/isis/commons/plugins/PluginResolveException.java b/core/commons/src/main/java/org/apache/isis/core/plugins/PluginResolveException.java
similarity index 90%
rename from core/commons/src/main/java/org/apache/isis/commons/plugins/PluginResolveException.java
rename to core/commons/src/main/java/org/apache/isis/core/plugins/PluginResolveException.java
index 3f39581..5f37b8b 100644
--- a/core/commons/src/main/java/org/apache/isis/commons/plugins/PluginResolveException.java
+++ b/core/commons/src/main/java/org/apache/isis/core/plugins/PluginResolveException.java
@@ -1,4 +1,4 @@
-package org.apache.isis.commons.plugins;
+package org.apache.isis.core.plugins;
 
 public class PluginResolveException extends RuntimeException {
     
diff --git a/core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscovery.java b/core/commons/src/main/java/org/apache/isis/core/plugins/classdiscovery/ClassDiscovery.java
similarity index 96%
rename from core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscovery.java
rename to core/commons/src/main/java/org/apache/isis/core/plugins/classdiscovery/ClassDiscovery.java
index b9e07f9..72b14a5 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscovery.java
+++ b/core/commons/src/main/java/org/apache/isis/core/plugins/classdiscovery/ClassDiscovery.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.plugins.classdiscovery;
+package org.apache.isis.core.plugins.classdiscovery;
 
 import java.lang.annotation.Annotation;
 import java.util.Collections;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscoveryPlugin.java b/core/commons/src/main/java/org/apache/isis/core/plugins/classdiscovery/ClassDiscoveryPlugin.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscoveryPlugin.java
rename to core/commons/src/main/java/org/apache/isis/core/plugins/classdiscovery/ClassDiscoveryPlugin.java
index f320b06..0a52096 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/plugins/classdiscovery/ClassDiscoveryPlugin.java
+++ b/core/commons/src/main/java/org/apache/isis/core/plugins/classdiscovery/ClassDiscoveryPlugin.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.plugins.classdiscovery;
+package org.apache.isis.core.plugins.classdiscovery;
 
 import java.util.List;
 
diff --git a/core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactory.java b/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactory.java
similarity index 98%
rename from core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactory.java
rename to core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactory.java
index b44936b..616810e 100644
--- a/core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactory.java
+++ b/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactory.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.core.runtime.plugins.codegen;
+package org.apache.isis.core.plugins.codegen;
 
 import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.Method;
diff --git a/core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPlugin.java b/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPlugin.java
similarity index 96%
rename from core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPlugin.java
rename to core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPlugin.java
index dfadc62..8976967 100644
--- a/core/commons/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPlugin.java
+++ b/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPlugin.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.core.runtime.plugins.codegen;
+package org.apache.isis.core.plugins.codegen;
 
 import java.lang.reflect.Method;
 import java.util.function.Predicate;
diff --git a/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java b/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
similarity index 74%
rename from core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
rename to core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
index 0154f46..e8e80c6 100644
--- a/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
+++ b/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
@@ -1,9 +1,11 @@
-package org.apache.isis.core.runtime.plugins.codegen;
+package org.apache.isis.core.plugins.codegen;
 
 import java.lang.reflect.Method;
 import java.util.function.Predicate;
 
 import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.core.plugins.codegen.ProxyFactory;
+import org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin;
 
 public class ProxyFactoryPluginUsingByteBuddy implements ProxyFactoryPlugin {
 
diff --git a/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin b/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin
new file mode 100644
index 0000000..25e0269
--- /dev/null
+++ b/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin
@@ -0,0 +1 @@
+org.apache.isis.core.plugins.codegen.ProxyFactoryPluginUsingByteBuddy
\ No newline at end of file
diff --git a/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin b/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
deleted file mode 100644
index f1dc631..0000000
--- a/core/plugins/codegen-bytebuddy/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
+++ /dev/null
@@ -1 +0,0 @@
-org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPluginUsingByteBuddy
\ No newline at end of file
diff --git a/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingJavassist.java b/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
similarity index 95%
rename from core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
rename to core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
index 5c92541..8e20ed5 100644
--- a/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/runtime/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
+++ b/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
@@ -1,4 +1,4 @@
-package org.apache.isis.core.runtime.plugins.codegen;
+package org.apache.isis.core.plugins.codegen;
 
 import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.InvocationTargetException;
@@ -11,6 +11,8 @@ import org.apache.isis.applib.internal._Constants;
 import org.apache.isis.applib.internal.base._Casts;
 import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.core.commons.exceptions.IsisException;
+import org.apache.isis.core.plugins.codegen.ProxyFactory;
+import org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin;
 import org.objenesis.Objenesis;
 import org.objenesis.ObjenesisStd;
 
diff --git a/core/plugins/codegen-javassist/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin b/core/plugins/codegen-javassist/src/main/resources/META-INF/services/org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin
similarity index 100%
rename from core/plugins/codegen-javassist/src/main/resources/META-INF/services/org.apache.isis.core.runtime.plugins.codegen.ProxyFactoryPlugin
rename to core/plugins/codegen-javassist/src/main/resources/META-INF/services/org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin
diff --git a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
similarity index 83%
rename from core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
rename to core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
index 6cb60e1..2703723 100644
--- a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
+++ b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
@@ -1,10 +1,10 @@
-package org.apache.isis.applib.plugins.classdiscovery.reflections;
+package org.apache.isis.core.plugins.classdiscovery.reflections;
 
 import java.util.List;
 
 import org.apache.isis.applib.internal.context._Context;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscovery;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin;
 import org.reflections.scanners.SubTypesScanner;
 import org.reflections.util.ClasspathHelper;
 
diff --git a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ReflectDiscovery.java b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectDiscovery.java
similarity index 93%
rename from core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ReflectDiscovery.java
rename to core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectDiscovery.java
index 0d04799..2337570 100644
--- a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ReflectDiscovery.java
+++ b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectDiscovery.java
@@ -1,4 +1,4 @@
-package org.apache.isis.applib.plugins.classdiscovery.reflections;
+package org.apache.isis.core.plugins.classdiscovery.reflections;
 
 import java.lang.annotation.Annotation;
 import java.util.HashSet;
@@ -11,7 +11,7 @@ import java.util.stream.Stream;
 import javax.validation.constraints.NotNull;
 
 import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscovery;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 import org.reflections.Reflections;
 
 /**
diff --git a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ReflectManifest.java b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectManifest.java
similarity index 98%
rename from core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ReflectManifest.java
rename to core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectManifest.java
index 6538d6e..2a5b463 100644
--- a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/applib/plugins/classdiscovery/reflections/ReflectManifest.java
+++ b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectManifest.java
@@ -1,4 +1,4 @@
-package org.apache.isis.applib.plugins.classdiscovery.reflections;
+package org.apache.isis.core.plugins.classdiscovery.reflections;
 
 import java.io.UnsupportedEncodingException;
 import java.net.URISyntaxException;
diff --git a/core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin b/core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin
deleted file mode 100644
index a3e4d44..0000000
--- a/core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin
+++ /dev/null
@@ -1 +0,0 @@
-org.apache.isis.applib.plugins.classdiscovery.reflections.ClassDiscoveryPluginUsingReflections
\ No newline at end of file
diff --git a/core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin b/core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin
new file mode 100644
index 0000000..910fddb
--- /dev/null
+++ b/core/plugins/discovery-reflections/src/main/resources/META-INF/services/org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin
@@ -0,0 +1 @@
+org.apache.isis.core.plugins.classdiscovery.reflections.ClassDiscoveryPluginUsingReflections
\ No newline at end of file
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
index 079aaf0..a43a71f 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
@@ -36,7 +36,7 @@ import org.apache.isis.core.commons.lang.ArrayExtensions;
 import org.apache.isis.core.commons.lang.MethodExtensions;
 import org.apache.isis.core.metamodel.services.ServicesInjector;
 import org.apache.isis.core.metamodel.specloader.classsubstitutor.ProxyEnhanced;
-import org.apache.isis.core.runtime.plugins.codegen.ProxyFactory;
+import org.apache.isis.core.plugins.codegen.ProxyFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java
index 0cde184..2713d4a 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java
@@ -34,10 +34,10 @@ import org.apache.isis.applib.AppManifest;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.DomainServiceLayout;
 import org.apache.isis.applib.internal.discover._Discover;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscovery;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
 import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceMenuOrder;
 import org.apache.isis.core.metamodel.util.DeweyOrderComparator;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
index af07168..e9aa480 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
@@ -49,7 +49,7 @@ import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
 import org.apache.isis.core.metamodel.specloader.classsubstitutor.ProxyEnhanced;
 import org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionMixedIn;
 import org.apache.isis.core.metamodel.specloader.specimpl.dflt.ObjectSpecificationDefault;
-import org.apache.isis.core.runtime.plugins.codegen.ProxyFactory;
+import org.apache.isis.core.plugins.codegen.ProxyFactory;
 import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
 import org.apache.isis.schema.cmd.v1.CommandDto;
 
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java
index 6957d9f..278c64f 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java
@@ -33,7 +33,6 @@ import org.apache.isis.applib.annotation.Mixin;
 import org.apache.isis.applib.annotation.Nature;
 import org.apache.isis.applib.fixturescripts.FixtureScript;
 import org.apache.isis.applib.internal.discover._Discover;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscovery;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
 import org.apache.isis.core.commons.factory.InstanceUtil;
@@ -44,6 +43,7 @@ import org.apache.isis.core.metamodel.services.ServicesInjector;
 import org.apache.isis.core.metamodel.specloader.ReflectorConstants;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
 import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidator;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 import org.apache.isis.core.runtime.authentication.AuthenticationManager;
 import org.apache.isis.core.runtime.authorization.AuthorizationManager;
 import org.apache.isis.core.runtime.fixtures.FixturesInstallerFromConfiguration;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java
index 32a67e2..8f4f92d 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java
@@ -26,7 +26,7 @@ import java.util.Set;
 import javax.jdo.annotations.PersistenceCapable;
 
 import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.plugins.classdiscovery.ClassDiscovery;
+import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 
 /**
  * 
diff --git a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java
index a66acdf..6b2a64d 100644
--- a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java
+++ b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java
@@ -28,7 +28,7 @@ import org.apache.isis.applib.internal.collections._Arrays;
 import org.apache.isis.applib.services.wrapper.WrappingObject;
 import org.apache.isis.core.commons.lang.ArrayExtensions;
 import org.apache.isis.core.metamodel.specloader.classsubstitutor.ProxyEnhanced;
-import org.apache.isis.core.runtime.plugins.codegen.ProxyFactory;
+import org.apache.isis.core.plugins.codegen.ProxyFactory;
 import org.apache.isis.core.wrapper.handlers.DelegatingInvocationHandler;
 
 import com.google.common.collect.MapMaker;

-- 
To stop receiving notification emails like this one, please contact
ahuber@apache.org.

[isis] 05/05: ISIS-1949: Aligning Internal API package names with new home 'commons'

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 963c08c7bab5c9a4cd79f426a2abc2dccb8e3817
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat May 19 19:11:59 2018 +0200

    ISIS-1949: Aligning Internal API package names with new home 'commons'
    
    ... org.apache.isis.commons.internal.*
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1949
---
 .../java/org/apache/isis/applib/util/Clause.java   |  2 +-
 .../isis/applib/util/ObjectContractsLegacy.java    |  8 +++----
 ...ectContractsLegacyTest_equals_and_hashCode.java |  2 +-
 .../apache/isis/applib/AppManifestAbstract.java    |  4 ++--
 .../java/org/apache/isis/applib/Identifier.java    |  4 ++--
 .../main/java/org/apache/isis/applib/Module.java   |  6 ++---
 .../org/apache/isis/applib/ModuleAbstract.java     |  4 ++--
 .../isis/applib/ModuleOrBuilderAbstract.java       |  6 ++---
 .../isis/applib/NonRecoverableException.java       |  2 +-
 .../apache/isis/applib/RecoverableException.java   |  4 ++--
 .../isis/applib/annotation/MemberGroupLayout.java  |  2 +-
 .../isis/applib/domain/DomainObjectList.java       |  2 +-
 .../applib/events/domain/AbstractDomainEvent.java  |  4 ++--
 .../isis/applib/events/ui/AbstractUiEvent.java     |  2 +-
 .../apache/isis/applib/fixtures/LogonFixture.java  |  2 +-
 .../fixturescripts/BuilderScriptAbstract.java      |  2 +-
 .../applib/fixturescripts/ExecutionParameters.java |  6 ++---
 .../applib/fixturescripts/FixtureResultList.java   |  6 ++---
 .../isis/applib/fixturescripts/FixtureScript.java  | 10 ++++----
 .../isis/applib/fixturescripts/FixtureScripts.java |  6 ++---
 .../setup/PersonaEnumPersistAll.java               |  2 +-
 .../teardown/TeardownFixtureAbstract.java          |  2 +-
 .../teardown/TeardownFixtureAbstract2.java         |  2 +-
 .../layout/component/CollectionLayoutData.java     |  2 +-
 .../isis/applib/layout/component/FieldSet.java     |  2 +-
 .../layout/component/PropertyLayoutData.java       |  2 +-
 .../isis/applib/layout/grid/GridAbstract.java      |  4 ++--
 .../isis/applib/layout/grid/bootstrap3/BS3Col.java |  2 +-
 .../applib/layout/grid/bootstrap3/BS3Grid.java     |  4 ++--
 .../isis/applib/layout/grid/bootstrap3/BS3Row.java |  2 +-
 .../isis/applib/layout/grid/bootstrap3/BS3Tab.java |  2 +-
 .../applib/layout/grid/bootstrap3/BS3TabGroup.java |  2 +-
 .../applib/layout/menubars/MenuBarsAbstract.java   |  2 +-
 .../applib/layout/menubars/bootstrap3/BS3Menu.java |  2 +-
 .../layout/menubars/bootstrap3/BS3MenuBar.java     |  2 +-
 .../layout/menubars/bootstrap3/BS3MenuBars.java    |  2 +-
 .../layout/menubars/bootstrap3/BS3MenuSection.java |  2 +-
 .../isis/applib/mixins/dto/DtoMappingHelper.java   |  2 +-
 .../mixins/layout/Object_downloadLayoutXml.java    |  2 +-
 .../applib/mixins/layout/Object_openRestApi.java   |  2 +-
 .../apache/isis/applib/query/QueryAbstract.java    |  2 +-
 .../services/appfeat/ApplicationMemberType.java    |  2 +-
 .../isis/applib/services/bookmark/Bookmark.java    |  4 ++--
 .../applib/services/bookmark/BookmarkService.java  |  2 +-
 .../ClassDiscoveryServiceDefault.java              |  4 ++--
 .../applib/services/command/CommandDefault.java    |  4 ++--
 .../services/config/ConfigurationProperty.java     |  6 ++---
 .../services/conmap/ContentMappingService.java     |  2 +-
 .../services/eventbus/EventBusImplementation.java  |  2 +-
 .../applib/services/eventbus/EventBusService.java  |  2 +-
 .../exceprecog/ExceptionRecognizerAbstract.java    |  2 +-
 .../exceprecog/ExceptionRecognizerComposite.java   |  2 +-
 .../exceprecog/ExceptionRecognizerForType.java     |  2 +-
 ...eptionRecognizerCompositeForJdoObjectStore.java |  2 +-
 .../applib/services/hsqldb/HsqlDbManagerMenu.java  |  4 ++--
 .../applib/services/i18n/TranslatableString.java   |  2 +-
 .../isis/applib/services/iactn/Interaction.java    |  4 ++--
 .../jaxb/CatalogingSchemaOutputResolver.java       |  4 ++--
 .../isis/applib/services/jaxb/JaxbService.java     |  6 ++---
 .../applib/services/layout/LayoutServiceMenu.java  |  2 +-
 .../services/metamodel/MetaModelServicesMenu.java  |  2 +-
 .../QueryResultsCacheInternal.java                 |  4 ++--
 .../applib/services/scratchpad/Scratchpad.java     |  2 +-
 .../services/swagger/SwaggerServiceMenu.java       |  2 +-
 .../services/urlencoding/UrlEncodingService.java   |  4 ++--
 ...rlEncodingServiceUsingBaseEncodingAbstract.java |  4 ++--
 .../UrlEncodingServiceWithCompression.java         |  4 ++--
 .../isis/applib/spec/AbstractSpecification2.java   |  2 +-
 .../org/apache/isis/applib/tree/LazyTreeNode.java  |  4 ++--
 .../java/org/apache/isis/applib/tree/TreeNode.java |  2 +-
 .../java/org/apache/isis/applib/util/Enums.java    |  2 +-
 .../java/org/apache/isis/applib/util/Equality.java |  4 ++--
 .../java/org/apache/isis/applib/util/Hashing.java  |  2 +-
 .../java/org/apache/isis/applib/util/JaxbUtil.java |  6 ++---
 .../isis/applib/util/ObjectContract_Parser.java    |  4 ++--
 .../apache/isis/applib/util/ObjectContracts.java   |  4 ++--
 .../org/apache/isis/applib/util/TitleBuffer.java   |  2 +-
 .../java/org/apache/isis/applib/util/ToString.java |  2 +-
 .../apache/isis/schema/utils/ChangesDtoUtils.java  |  3 +--
 .../apache/isis/schema/utils/CommandDtoUtils.java  |  2 +-
 .../apache/isis/schema/utils/CommonDtoUtils.java   | 12 +++++-----
 .../isis/schema/utils/InteractionDtoUtils.java     |  6 ++---
 .../isis/schema/utils/MemberExecutionDtoUtils.java |  2 +-
 .../jaxbadapters/PersistentEntitiesAdapter.java    |  2 +-
 .../Module_Util_transitiveDependenciesOf_Test.java |  4 ++--
 .../isis/applib/internal/base/BytesTest.java       |  4 +++-
 .../isis/applib/internal/base/NullSafeTest.java    |  2 ++
 .../isis/applib/internal/base/ReductionTest.java   |  3 ++-
 .../isis/applib/internal/base/StringsTest.java     |  4 +++-
 .../applib/internal/compare/ComparatorsTest.java   |  3 ++-
 .../isis/applib/internal/memento/MementosTest.java |  7 +++---
 ...onRecognizerCompositeForJdoObjectStoreTest.java |  2 +-
 .../XmlSnapshotServiceAbstractTest.java            |  2 +-
 .../ObjectContractsTest_equals_and_hashCode.java   |  2 +-
 .../applib/internal/exceptions/package-info.java   | 28 ----------------------
 .../applib/internal/functions/package-info.java    | 28 ----------------------
 .../isis/applib/internal/memento/package-info.java | 28 ----------------------
 .../applib/internal/resources/package-info.java    | 28 ----------------------
 .../{applib => commons}/internal/_Constants.java   |  2 +-
 .../{applib => commons}/internal/base/_Bytes.java  |  2 +-
 .../internal/base/_Bytes_GZipCompressor.java       |  2 +-
 .../internal/base/_Bytes_GZipCompressorSmart.java  |  4 ++--
 .../{applib => commons}/internal/base/_Casts.java  |  2 +-
 .../{applib => commons}/internal/base/_Lazy.java   |  2 +-
 .../internal/base/_NullSafe.java                   |  2 +-
 .../internal/base/_Reduction.java                  |  2 +-
 .../internal/base/_Strings.java                    |  8 +++----
 .../internal/base/_Strings_NaturalNames.java       |  2 +-
 .../internal/base/_Strings_SplitIterator.java      |  2 +-
 .../internal/base/package-info.java                |  2 +-
 .../internal/collections/_Arrays.java              |  8 +++----
 .../internal/collections/_Arrays_Collector.java    |  4 ++--
 .../collections/_Arrays_CollectorUnknownSize.java  |  4 ++--
 .../internal/collections/_Collections.java         |  4 ++--
 .../collections/_Collections_Collector.java        |  2 +-
 .../collections/_Collections_SortedSetOfList.java  |  2 +-
 .../internal/collections/_Lists.java               |  4 ++--
 .../internal/collections/_Maps.java                |  2 +-
 .../internal/collections/_Multimaps.java           |  2 +-
 .../internal/collections/_Sets.java                |  4 ++--
 .../internal/collections}/package-info.java        |  2 +-
 .../internal/compare/_Comparators.java             |  2 +-
 .../compare/_Comparators_SequenceCompare.java      |  4 ++--
 .../internal/compare}/package-info.java            |  2 +-
 .../internal/context/_Context.java                 |  8 +++----
 .../internal/context/_Plugin.java                  |  6 ++---
 .../internal/context/package-info.java             |  2 +-
 .../internal/discover/_Discover.java               |  4 ++--
 .../internal/discover}/package-info.java           |  2 +-
 .../internal/exceptions/_Exceptions.java           |  6 ++---
 .../internal/exceptions}/package-info.java         |  2 +-
 .../internal/functions/_Functions.java             |  2 +-
 .../_Functions_IndexAwareFunctionAdapter.java      |  4 ++--
 .../internal/functions}/package-info.java          |  2 +-
 .../internal/memento/_Mementos.java                |  2 +-
 .../internal/memento/_Mementos_MementoDefault.java | 18 +++++++-------
 .../internal/memento}/package-info.java            |  2 +-
 .../{applib => commons}/internal/package-info.java |  2 +-
 .../internal/resources/_Resource.java              |  8 +++----
 .../internal/resources/_Resource_ContextPath.java  |  2 +-
 .../internal/resources/_Resource_Path.java         |  4 ++--
 .../internal/resources/_Resource_RestfulPath.java  |  2 +-
 .../internal/resources}/package-info.java          |  2 +-
 .../core/plugins/codegen/ProxyFactoryPlugin.java   |  2 +-
 .../integtestsupport/IntegrationTestAbstract.java  |  2 +-
 .../integtestsupport/IntegrationTestAbstract3.java |  2 +-
 .../core/integtestsupport/IsisSystemForTest.java   |  4 ++--
 .../core/integtestsupport/ThrowableMatchers.java   |  2 +-
 .../scenarios/ObjectFactoryForIntegration.java     |  2 +-
 .../RepositoryServiceLegacyInternalDefault.java    |  2 +-
 .../isis/core/commons/encoding/FieldType.java      |  2 +-
 .../core/commons/exceptions/ExceptionUtils.java    |  2 +-
 .../isis/core/commons/factory/InstanceUtil.java    |  2 +-
 .../apache/isis/core/commons/lang/ClassUtil.java   |  2 +-
 .../commons/lang/MethodInvocationPreprocessor.java |  8 +++----
 .../isis/core/commons/lang/ObjectExtensions.java   |  2 +-
 .../isis/core/commons/lang/ResourceUtil.java       |  2 +-
 .../isis/core/commons/lang/StringExtensions.java   |  2 +-
 ...ResourceStreamSourceContextLoaderClassPath.java |  2 +-
 .../core/metamodel/IsisJdoMetamodelPlugin.java     |  2 +-
 .../isis/core/metamodel/adapter/ObjectAdapter.java |  2 +-
 .../isis/core/metamodel/adapter/oid/Oid.java       |  2 +-
 .../isis/core/metamodel/facetapi/FacetUtil.java    |  4 ++--
 .../core/metamodel/facets/CollectionUtils.java     | 10 ++++----
 .../isis/core/metamodel/facets/FacetedMethod.java  |  2 +-
 ...rCollectionIdentifyingFacetFactoryAbstract.java |  2 +-
 .../facets/actcoll/typeof/TypeOfFacet.java         |  4 ++--
 .../action/ActionAnnotationFacetFactory.java       |  2 +-
 ...ctionInvocationFacetForDomainEventAbstract.java |  2 +-
 .../actions/action/invocation/CommandUtil.java     |  4 ++--
 .../ActionDefaultsFacetViaMethodFactory.java       |  2 +-
 .../CollectionAccessorFacetViaAccessor.java        |  2 +-
 .../CollectionAnnotationFacetFactory.java          |  2 +-
 .../javautilcollection/CollectionFacetFactory.java |  4 ++--
 .../choices/ChoicesFacetFromBoundedAbstract.java   |  4 ++--
 .../AuditableFacetForDomainObjectAnnotation.java   |  2 +-
 ...lishedObjectFacetForDomainObjectAnnotation.java |  2 +-
 .../domainservice/DomainServiceMenuOrder.java      |  2 +-
 .../ignore/javalang/RemoveMethodsFacetFactory.java |  2 +-
 .../MemberGroupLayoutFacetProperties.java          |  2 +-
 .../NavigableParentAnnotationFacetFactory.java     |  2 +-
 ...ObjectFacetDeclarativeInitializingAbstract.java |  4 ++--
 .../ActionParameterAutoCompleteFacetViaMethod.java |  4 ++--
 ...rameterChoicesFacetDerivedFromChoicesFacet.java |  2 +-
 .../method/ActionChoicesFacetViaMethod.java        |  2 +-
 .../method/ActionChoicesFacetViaMethodFactory.java |  2 +-
 .../ActionParameterChoicesFacetViaMethod.java      |  4 ++--
 ...cetInvertedByNullableAnnotationOnParameter.java |  2 +-
 .../method/PropertyAutoCompleteFacetMethod.java    |  2 +-
 ...ropertyChoicesFacetDerivedFromChoicesFacet.java |  2 +-
 .../ValueSemanticsProviderAbstractTemporal.java    |  2 +-
 .../JavaSqlTimeStampValueSemanticsProvider.java    |  2 +-
 .../treenode/TreeNodeValueSemanticsProvider.java   |  6 ++---
 .../MemberOrderFacetComparator.java                |  2 +-
 .../progmodel/ProgrammingModelPlugin.java          |  4 ++--
 .../core/metamodel/services/ServicesInjector.java  | 12 +++++-----
 .../bookmarks/BookmarkServiceInternalDefault.java  |  8 +++----
 .../config/ConfigurationServiceDefault.java        |  6 ++---
 .../factory/FactoryServiceInternalDefault.java     |  2 +-
 .../services/grid/GridLoaderServiceDefault.java    |  2 +-
 .../RepositoryServiceInternalDefault.java          |  2 +-
 .../services/swagger/SwaggerServiceDefault.java    |  4 ++--
 .../swagger/internal/ValuePropertyFactory.java     |  2 +-
 .../swagger/internal/ValuePropertyPlugin.java      |  2 +-
 .../core/metamodel/spec/feature/ObjectAction.java  |  4 ++--
 .../core/metamodel/specloader/CollectionUtils.java |  4 ++--
 .../specloader/specimpl/ObjectActionDefault.java   |  4 ++--
 .../specimpl/OneToOneAssociationDefault.java       |  2 +-
 .../core/metamodel/util/DeweyOrderComparator.java  |  2 +-
 .../core/runtime/threadpool/ThreadPoolSupport.java |  4 ++--
 .../dflt/ProgrammingModelFacetsJava5.java          |  2 +-
 .../apache/isis/core/metamodel/facets/Utils.java   |  2 +-
 .../codegen/ProxyFactoryPluginUsingByteBuddy.java  |  2 +-
 .../codegen/ProxyFactoryPluginUsingJavassist.java  |  6 ++---
 .../ClassDiscoveryPluginUsingReflections.java      |  2 +-
 .../reflections/ReflectDiscovery.java              |  2 +-
 .../system/persistence/PersistenceSession4.java    |  4 ++--
 .../persistence/spi/JdoObjectIdSerializer.java     |  2 +-
 .../system/persistence/PersistenceSession5.java    |  6 ++---
 .../persistence/spi/JdoObjectIdSerializer.java     |  2 +-
 .../isis/core/metamodel/IsisJdoRuntimePlugin.java  |  2 +-
 .../apache/isis/core/runtime/memento/Memento.java  |  2 +-
 .../core/runtime/services/ServiceInstantiator.java |  2 +-
 .../services/ServicesInstallerFromAnnotation.java  |  2 +-
 .../background/BackgroundServiceDefault.java       |  4 ++--
 .../core/runtime/system/context/IsisContext.java   |  2 +-
 .../system/persistence/PersistenceSessionBase.java |  4 ++--
 .../system/session/IsisSessionFactoryBuilder.java  |  2 +-
 .../IsisComponentProvider.java                     |  2 +-
 .../PersistenceCapableTypeFinder.java              |  2 +-
 .../scenarios/ScenarioExecutionScope.java          |  2 +-
 .../core/specsupport/specs/CukeGlueAbstract.java   |  2 +-
 .../restfulobjects/applib/JsonRepresentation.java  |  6 ++---
 .../applib/client/RestfulResponse.java             |  2 +-
 .../applib/client/UriBuilderPlugin.java            |  2 +-
 .../restfulobjects/applib/util/MediaTypes.java     |  2 +-
 .../viewer/restfulobjects/applib/util/Parser.java  |  8 +++----
 .../restfulobjects/applib/util/PathNode.java       |  6 ++---
 .../applib/util/UrlEncodingUtils.java              |  4 ++--
 .../server/IsisJaxrsServerPlugin.java              |  2 +-
 .../server/RestfulObjectsApplication.java          |  2 +-
 .../wicket/viewer/IsisWicketApplication.java       |  6 ++---
 .../ComponentFactoryRegistrarDefault.java          |  2 +-
 .../model/mementos/ObjectAdapterMemento.java       |  2 +-
 .../viewer/wicket/model/models/ActionModel.java    |  2 +-
 .../wicket/model/models/EntityCollectionModel.java |  6 ++---
 .../viewer/wicket/model/models/ScalarModel.java    |  2 +-
 .../isis/viewer/wicket/model/models/Util.java      |  2 +-
 .../wicket/model/models/WicketComponentUtils.java  |  2 +-
 .../ui/components/about/JarManifestModel.java      |  2 +-
 .../collection/bulk/BulkActionsLinkFactory.java    |  4 ++--
 .../wicket/ui/components/layout/bs3/col/Col.java   |  2 +-
 .../components/layout/bs3/tabs/TabGroupPanel.java  |  2 +-
 .../components/scalars/IsisConverterLocator.java   |  6 ++---
 .../scalars/reference/ReferencePanel.java          |  2 +-
 .../valuechoices/ValueChoicesSelect2Panel.java     |  2 +-
 .../components/tree/IsisToWicketTreeAdapter.java   |  4 ++--
 .../ui/components/widgets/navbar/Placement.java    |  2 +-
 ...entoProviderForReferenceObjectAutoComplete.java |  2 +-
 ...derForReferenceParamOrPropertyAutoComplete.java |  2 +-
 .../handlers/DomainObjectInvocationHandler.java    |  2 +-
 .../isis/core/wrapper/proxy/ProxyCreator.java      |  4 ++--
 262 files changed, 412 insertions(+), 516 deletions(-)

diff --git a/core/applib-legacy/src/main/java/org/apache/isis/applib/util/Clause.java b/core/applib-legacy/src/main/java/org/apache/isis/applib/util/Clause.java
index cd74311..e718aab 100644
--- a/core/applib-legacy/src/main/java/org/apache/isis/applib/util/Clause.java
+++ b/core/applib-legacy/src/main/java/org/apache/isis/applib/util/Clause.java
@@ -23,7 +23,7 @@ import java.util.Comparator;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 
 class Clause {
     private static Pattern pattern = Pattern.compile("\\W*(\\w+)\\W*(asc|asc nullsFirst|asc nullsLast|desc|desc nullsFirst|desc nullsLast)?\\W*");
diff --git a/core/applib-legacy/src/main/java/org/apache/isis/applib/util/ObjectContractsLegacy.java b/core/applib-legacy/src/main/java/org/apache/isis/applib/util/ObjectContractsLegacy.java
index ce0a29f..02af346 100644
--- a/core/applib-legacy/src/main/java/org/apache/isis/applib/util/ObjectContractsLegacy.java
+++ b/core/applib-legacy/src/main/java/org/apache/isis/applib/util/ObjectContractsLegacy.java
@@ -21,10 +21,10 @@ import java.util.Comparator;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.collections._Lists;
 
 import com.google.common.base.Function;
 import com.google.common.base.Objects;
diff --git a/core/applib-legacy/src/test/java/org/apache/isis/applib/util/ObjectContractsLegacyTest_equals_and_hashCode.java b/core/applib-legacy/src/test/java/org/apache/isis/applib/util/ObjectContractsLegacyTest_equals_and_hashCode.java
index a84e6cd..445e059 100644
--- a/core/applib-legacy/src/test/java/org/apache/isis/applib/util/ObjectContractsLegacyTest_equals_and_hashCode.java
+++ b/core/applib-legacy/src/test/java/org/apache/isis/applib/util/ObjectContractsLegacyTest_equals_and_hashCode.java
@@ -18,7 +18,7 @@ package org.apache.isis.applib.util;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.unittestsupport.value.ValueTypeContractTestAbstract;
 import org.junit.Before;
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract.java
index 86bf441..965bb52 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/AppManifestAbstract.java
@@ -24,8 +24,8 @@ import java.util.Map;
 import java.util.Set;
 
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 
 /**
  * Convenience adapter, configured using an {@link Builder}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/Identifier.java b/core/applib/src/main/java/org/apache/isis/applib/Identifier.java
index 3d2b989..65c1a6b 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/Identifier.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/Identifier.java
@@ -25,8 +25,8 @@ import java.util.List;
 import java.util.StringTokenizer;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
 
 public class Identifier implements Comparable<Identifier> {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/Module.java b/core/applib/src/main/java/org/apache/isis/applib/Module.java
index 01c2fc9..f960439 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/Module.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/Module.java
@@ -25,9 +25,9 @@ import java.util.Set;
 
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Sets;
 
 /**
  * Represents a collection of entities and domain services that provide a set of coherent functionality under a
diff --git a/core/applib/src/main/java/org/apache/isis/applib/ModuleAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/ModuleAbstract.java
index d5d63b6..b9b7fe0 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/ModuleAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/ModuleAbstract.java
@@ -27,8 +27,8 @@ import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlTransient;
 
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Sets;
 
 /**
  * Adapter for {@link Module} which has a default no-op implementation.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java
index 479d0fd..527951e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/ModuleOrBuilderAbstract.java
@@ -26,9 +26,9 @@ import java.util.Set;
 
 import javax.xml.bind.annotation.XmlTransient;
 
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Sets;
 
 /**
  * Factors out the commonality between {@link AppManifestAbstract.Builder} and {@link ModuleAbstract}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/NonRecoverableException.java b/core/applib/src/main/java/org/apache/isis/applib/NonRecoverableException.java
index f59b1fb7..8620703 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/NonRecoverableException.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/NonRecoverableException.java
@@ -19,9 +19,9 @@
 
 package org.apache.isis.applib;
 
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.services.exceprecog.TranslatableException;
 import org.apache.isis.applib.services.i18n.TranslatableString;
+import org.apache.isis.commons.internal.base._Strings;
 
 /**
  * Indicates that an unexpected, non-recoverable (fatal) exception has occurred within
diff --git a/core/applib/src/main/java/org/apache/isis/applib/RecoverableException.java b/core/applib/src/main/java/org/apache/isis/applib/RecoverableException.java
index da962e1..274266a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/RecoverableException.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/RecoverableException.java
@@ -19,10 +19,10 @@
 
 package org.apache.isis.applib;
 
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.exceprecog.TranslatableException;
 import org.apache.isis.applib.services.i18n.TranslatableString;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 /**
  * Indicates that an exceptional condition/problem has occurred within the application's domain logic.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/annotation/MemberGroupLayout.java b/core/applib/src/main/java/org/apache/isis/applib/annotation/MemberGroupLayout.java
index d072cc0..c31ccae 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/annotation/MemberGroupLayout.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/annotation/MemberGroupLayout.java
@@ -28,7 +28,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 
 /**
  * Specifies the positioning of an entity's (groups of) properties and of its collections, on a page, column by column.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java b/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java
index 5d76466..cbc29ad 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java
@@ -32,7 +32,7 @@ import org.apache.isis.applib.annotation.Editing;
 import org.apache.isis.applib.annotation.Nature;
 import org.apache.isis.applib.annotation.Optionality;
 import org.apache.isis.applib.annotation.Property;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.schema.utils.jaxbadapters.PersistentEntitiesAdapter;
 
 @XmlRootElement(name = "list")
diff --git a/core/applib/src/main/java/org/apache/isis/applib/events/domain/AbstractDomainEvent.java b/core/applib/src/main/java/org/apache/isis/applib/events/domain/AbstractDomainEvent.java
index 2af8347..b5f8bb9 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/events/domain/AbstractDomainEvent.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/events/domain/AbstractDomainEvent.java
@@ -23,11 +23,11 @@ import java.util.Map;
 
 import org.apache.isis.applib.Identifier;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.i18n.TranslatableString;
 import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.applib.util.ToString;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 public abstract class AbstractDomainEvent<S> extends java.util.EventObject {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/events/ui/AbstractUiEvent.java b/core/applib/src/main/java/org/apache/isis/applib/events/ui/AbstractUiEvent.java
index 274ab7f..385bb1e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/events/ui/AbstractUiEvent.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/events/ui/AbstractUiEvent.java
@@ -21,9 +21,9 @@ package org.apache.isis.applib.events.ui;
 import java.util.EventObject;
 import java.util.Map;
 
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.applib.util.ToString;
+import org.apache.isis.commons.internal.collections._Maps;
 
 public abstract class AbstractUiEvent<S> extends EventObject {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixtures/LogonFixture.java b/core/applib/src/main/java/org/apache/isis/applib/fixtures/LogonFixture.java
index b0b9c0b..43b8abd 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixtures/LogonFixture.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixtures/LogonFixture.java
@@ -22,7 +22,7 @@ package org.apache.isis.applib.fixtures;
 import java.util.List;
 
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Indicates that the demo or test should be run as the specified user, with the
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/BuilderScriptAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/BuilderScriptAbstract.java
index 2dd8260..d15aa8a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/BuilderScriptAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/BuilderScriptAbstract.java
@@ -21,7 +21,7 @@ package org.apache.isis.applib.fixturescripts;
 import java.util.List;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 public abstract class BuilderScriptAbstract<T,F extends BuilderScriptAbstract<T,F>>
         extends FixtureScript implements WithPrereqs<T,F>, FixtureScriptWithExecutionStrategy {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/ExecutionParameters.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/ExecutionParameters.java
index ae0d08a..2b34087 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/ExecutionParameters.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/ExecutionParameters.java
@@ -25,9 +25,9 @@ import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.joda.time.DateTime;
 import org.joda.time.LocalDate;
 import org.joda.time.LocalDateTime;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureResultList.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureResultList.java
index 90a45c0..46e8089 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureResultList.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureResultList.java
@@ -23,9 +23,9 @@ import java.util.List;
 import java.util.Map;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 
 /**
  * Collecting parameter.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
index 80780f3..d72bde8 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
@@ -35,11 +35,6 @@ import org.apache.isis.applib.annotation.ViewModelLayout;
 import org.apache.isis.applib.annotation.Where;
 import org.apache.isis.applib.fixtures.FixtureType;
 import org.apache.isis.applib.fixtures.InstallableFixture;
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.applib.services.repository.RepositoryService;
@@ -47,6 +42,11 @@ import org.apache.isis.applib.services.sessmgmt.SessionManagementService;
 import org.apache.isis.applib.services.user.UserService;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.applib.services.xactn.TransactionService;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.joda.time.LocalDate;
 import org.joda.time.LocalDateTime;
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java
index 7cfefec..a78f90e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java
@@ -40,9 +40,6 @@ import org.apache.isis.applib.annotation.Parameter;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.annotation.RestrictTo;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.classdiscovery.ClassDiscoveryService;
 import org.apache.isis.applib.services.factory.FactoryService;
@@ -53,6 +50,9 @@ import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.applib.services.title.TitleService;
 import org.apache.isis.applib.services.xactn.TransactionService;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 
 /**
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/setup/PersonaEnumPersistAll.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/setup/PersonaEnumPersistAll.java
index f4fbe03..4c4ec5e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/setup/PersonaEnumPersistAll.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/setup/PersonaEnumPersistAll.java
@@ -25,7 +25,7 @@ import org.apache.isis.applib.fixturescripts.FixtureScript;
 import org.apache.isis.applib.fixturescripts.FixtureScriptWithExecutionStrategy;
 import org.apache.isis.applib.fixturescripts.FixtureScripts;
 import org.apache.isis.applib.fixturescripts.PersonaWithBuilderScript;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 public class PersonaEnumPersistAll<E extends Enum<E> & PersonaWithBuilderScript<T,F>, T, F extends BuilderScriptAbstract<T,F>>
         extends FixtureScript
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract.java
index 8c16f2d..3792802 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract.java
@@ -22,8 +22,8 @@ import javax.inject.Inject;
 import javax.jdo.metadata.TypeMetadata;
 
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.services.jdosupport.IsisJdoSupport;
+import org.apache.isis.commons.internal.base._Strings;
 
 public abstract class TeardownFixtureAbstract extends FixtureScript {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract2.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract2.java
index 13d5c74..d637126 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract2.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/teardown/TeardownFixtureAbstract2.java
@@ -26,8 +26,8 @@ import javax.jdo.metadata.DiscriminatorMetadata;
 import javax.jdo.metadata.InheritanceMetadata;
 import javax.jdo.metadata.TypeMetadata;
 
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.services.jdosupport.IsisJdoSupport;
+import org.apache.isis.commons.internal.base._Strings;
 
 public abstract class TeardownFixtureAbstract2 extends TeardownFixtureAbstract {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/component/CollectionLayoutData.java b/core/applib/src/main/java/org/apache/isis/applib/layout/component/CollectionLayoutData.java
index 086e2e2..55d7538 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/component/CollectionLayoutData.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/component/CollectionLayoutData.java
@@ -28,8 +28,8 @@ import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.links.Link;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Describes the layout of a single collection, broadly corresponds to the {@link org.apache.isis.applib.annotation.CollectionLayout} annotation.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/component/FieldSet.java b/core/applib/src/main/java/org/apache/isis/applib/layout/component/FieldSet.java
index 5045604..efb065f 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/component/FieldSet.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/component/FieldSet.java
@@ -28,8 +28,8 @@ import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.MemberOrder;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.grid.bootstrap3.BS3Col;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * A {@link MemberRegion region} of the page containing a set of
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/component/PropertyLayoutData.java b/core/applib/src/main/java/org/apache/isis/applib/layout/component/PropertyLayoutData.java
index 1c28eda..2203326 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/component/PropertyLayoutData.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/component/PropertyLayoutData.java
@@ -32,8 +32,8 @@ import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.RenderDay;
 import org.apache.isis.applib.annotation.Repainting;
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.links.Link;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Describes the layout of a single property, broadly corresponds to the {@link org.apache.isis.applib.annotation.PropertyLayout} annotation.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/GridAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/GridAbstract.java
index 77f529c..cb898ad 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/GridAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/GridAbstract.java
@@ -24,8 +24,6 @@ import java.util.List;
 import javax.xml.bind.annotation.XmlTransient;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.layout.component.ActionLayoutData;
 import org.apache.isis.applib.layout.component.ActionLayoutDataOwner;
 import org.apache.isis.applib.layout.component.CollectionLayoutData;
@@ -35,6 +33,8 @@ import org.apache.isis.applib.layout.component.FieldSetOwner;
 import org.apache.isis.applib.layout.component.PropertyLayoutData;
 import org.apache.isis.applib.layout.grid.bootstrap3.BS3Grid;
 import org.apache.isis.applib.services.layout.LayoutService;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 
 /**
  * All top-level page layout classes should implement this interface.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Col.java b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Col.java
index 5531dc7..407d5a8 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Col.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Col.java
@@ -26,7 +26,6 @@ import javax.xml.bind.annotation.XmlElementRef;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
 
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.component.ActionLayoutData;
 import org.apache.isis.applib.layout.component.ActionLayoutDataOwner;
 import org.apache.isis.applib.layout.component.CollectionLayoutData;
@@ -35,6 +34,7 @@ import org.apache.isis.applib.layout.component.DomainObjectLayoutData;
 import org.apache.isis.applib.layout.component.DomainObjectLayoutDataOwner;
 import org.apache.isis.applib.layout.component.FieldSet;
 import org.apache.isis.applib.layout.component.FieldSetOwner;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * A column within a row which, depending on its {@link #getSpan()}, could be as narrow as 1/12th of the page's width, all the way up to spanning the entire page.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Grid.java b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Grid.java
index 3bd439c..ac81d2e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Grid.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Grid.java
@@ -28,8 +28,6 @@ import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.layout.component.ActionLayoutData;
 import org.apache.isis.applib.layout.component.CollectionLayoutData;
 import org.apache.isis.applib.layout.component.DomainObjectLayoutData;
@@ -38,6 +36,8 @@ import org.apache.isis.applib.layout.component.PropertyLayoutData;
 import org.apache.isis.applib.layout.grid.Grid;
 import org.apache.isis.applib.layout.grid.GridAbstract;
 import org.apache.isis.applib.mixins.dto.Dto;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 
 /**
  * This is the top-level for rendering the domain object's properties, collections and actions.  It simply consists
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Row.java b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Row.java
index ca61432..b00b5e9 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Row.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Row.java
@@ -28,7 +28,7 @@ import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Contains a row of content, either on the top-level {@link BS3Grid page} or at any other lower-level element that can
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Tab.java b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Tab.java
index 827726b..2a9256f 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Tab.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3Tab.java
@@ -28,11 +28,11 @@ import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.component.ActionLayoutData;
 import org.apache.isis.applib.layout.component.CollectionLayoutData;
 import org.apache.isis.applib.layout.component.DomainObjectLayoutData;
 import org.apache.isis.applib.layout.component.PropertyLayoutData;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Represents a tab within a {@link BS3TabGroup tab group}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3TabGroup.java b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3TabGroup.java
index e85332b..01817cf 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3TabGroup.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/grid/bootstrap3/BS3TabGroup.java
@@ -26,7 +26,7 @@ import javax.xml.bind.annotation.XmlTransient;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Represents a tab group containing one or more {@link BS3Tab tab}s.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/MenuBarsAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/MenuBarsAbstract.java
index 2e4026b..f426bd4 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/MenuBarsAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/MenuBarsAbstract.java
@@ -24,8 +24,8 @@ import java.util.LinkedHashMap;
 import javax.xml.bind.annotation.XmlTransient;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.layout.component.ServiceActionLayoutData;
+import org.apache.isis.commons.internal.collections._Maps;
 
 @XmlTransient // ignore this class
 public abstract class MenuBarsAbstract implements MenuBars, Serializable {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3Menu.java b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3Menu.java
index 32ce084..efbe2c3 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3Menu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3Menu.java
@@ -26,8 +26,8 @@ import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.menubars.Menu;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Describes the collection of domain services into menubars, broadly corresponding to the aggregation of information of {@link DomainServiceLayout} that have the same value of {@link DomainServiceLayout#named()}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBar.java b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBar.java
index 229946b..a97ecc0 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBar.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBar.java
@@ -25,8 +25,8 @@ import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.menubars.MenuBar;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Describes the collection of domain services into menubars, broadly corresponding to the aggregation of information of {@link org.apache.isis.applib.annotation.DomainServiceLayout} that have the same value of {@link DomainServiceLayout#named()}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBars.java b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBars.java
index e4d5064..8361b06 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBars.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuBars.java
@@ -25,9 +25,9 @@ import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
 
 import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.layout.component.ServiceActionLayoutData;
 import org.apache.isis.applib.layout.menubars.MenuBars;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 /**
  * Describes the collection of domain services into menubars, broadly corresponding to the aggregation of information within {@link org.apache.isis.applib.annotation.DomainServiceLayout}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuSection.java b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuSection.java
index 5fe83e5..fbddc6c 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuSection.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/layout/menubars/bootstrap3/BS3MenuSection.java
@@ -24,10 +24,10 @@ import java.util.List;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
 
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.component.ServiceActionLayoutData;
 import org.apache.isis.applib.layout.component.ServiceActionLayoutDataOwner;
 import org.apache.isis.applib.layout.menubars.MenuSection;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Corresponds to a domain service that contributes its serviceActions under a particular {@link BS3MenuBar}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/DtoMappingHelper.java b/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/DtoMappingHelper.java
index 9cb75d2..c3acd22 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/DtoMappingHelper.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/DtoMappingHelper.java
@@ -21,9 +21,9 @@ import javax.inject.Inject;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.schema.common.v1.BookmarkObjectState;
 import org.apache.isis.schema.common.v1.OidDto;
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_downloadLayoutXml.java b/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_downloadLayoutXml.java
index 73417c5..6e7f8a1 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_downloadLayoutXml.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_downloadLayoutXml.java
@@ -24,9 +24,9 @@ import org.apache.isis.applib.annotation.Mixin;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.services.layout.LayoutService;
 import org.apache.isis.applib.value.Clob;
+import org.apache.isis.commons.internal.base._Strings;
 
 @Mixin(method="act")
 public class Object_downloadLayoutXml {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_openRestApi.java b/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_openRestApi.java
index 0d6990b..93782b6 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_openRestApi.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/mixins/layout/Object_openRestApi.java
@@ -23,11 +23,11 @@ import org.apache.isis.applib.annotation.MemberOrder;
 import org.apache.isis.applib.annotation.Mixin;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.internal.resources._Resource;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.swagger.SwaggerService;
 import org.apache.isis.applib.value.LocalResourcePath;
+import org.apache.isis.commons.internal.resources._Resource;
 
 @Mixin(method="act")
 public class Object_openRestApi {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/query/QueryAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/query/QueryAbstract.java
index d16f908..b0f0331 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/query/QueryAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/query/QueryAbstract.java
@@ -19,7 +19,7 @@
 
 package org.apache.isis.applib.query;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 
 /**
  * Convenience adapter class for {@link Query}.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/appfeat/ApplicationMemberType.java b/core/applib/src/main/java/org/apache/isis/applib/services/appfeat/ApplicationMemberType.java
index b83ba78..c831be8 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/appfeat/ApplicationMemberType.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/appfeat/ApplicationMemberType.java
@@ -18,7 +18,7 @@
  */
 package org.apache.isis.applib.services.appfeat;
 
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 
 public enum ApplicationMemberType {
     PROPERTY,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/Bookmark.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/Bookmark.java
index b8ed3d3..b742e4a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/Bookmark.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/Bookmark.java
@@ -22,8 +22,8 @@ import java.io.Serializable;
 import java.util.Iterator;
 
 import org.apache.isis.applib.annotation.Value;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.schema.common.v1.BookmarkObjectState;
 import org.apache.isis.schema.common.v1.OidDto;
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
index 7e9a418..f45bc17f 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
@@ -19,7 +19,7 @@
 package org.apache.isis.applib.services.bookmark;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.memento._Mementos.SerializingAdapter;
+import org.apache.isis.commons.internal.memento._Mementos.SerializingAdapter;
 
 /**
  * This service enables a serializable &quot;bookmark&quot; to be created for an entity.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceDefault.java b/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceDefault.java
index acd27f3..7be60fd 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceDefault.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/classdiscovery/ClassDiscoveryServiceDefault.java
@@ -27,8 +27,8 @@ import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.discover._Discover;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.discover._Discover;
 
 /**
  * This utility service supports the dynamic discovery of classes from the classpath.  One service that uses this
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandDefault.java b/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandDefault.java
index de62c9b..f89a3bc 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandDefault.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/command/CommandDefault.java
@@ -28,11 +28,11 @@ import org.apache.isis.applib.annotation.CommandExecuteIn;
 import org.apache.isis.applib.annotation.CommandPersistence;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.events.domain.ActionDomainEvent;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.util.ObjectContracts;
 import org.apache.isis.applib.util.ToString;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 
 public class CommandDefault implements Command {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationProperty.java b/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationProperty.java
index f123ca7..4b20c8a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationProperty.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationProperty.java
@@ -29,9 +29,9 @@ import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.DomainObjectLayout;
 import org.apache.isis.applib.annotation.Editing;
 import org.apache.isis.applib.annotation.Title;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.collections._Lists;
 
 @XmlRootElement(name = "configurationProperty")
 @XmlType(
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/conmap/ContentMappingService.java b/core/applib/src/main/java/org/apache/isis/applib/services/conmap/ContentMappingService.java
index 19c960c..6f4aad0 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/conmap/ContentMappingService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/conmap/ContentMappingService.java
@@ -25,7 +25,7 @@ import java.util.stream.Collectors;
 import javax.ws.rs.core.MediaType;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 
 public interface ContentMappingService {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusImplementation.java b/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusImplementation.java
index f2834cf..625355e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusImplementation.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusImplementation.java
@@ -18,7 +18,7 @@ package org.apache.isis.applib.services.eventbus;
 
 import java.util.function.Consumer;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 
 /**
  * Common interface for all Event Bus implementations.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusService.java b/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusService.java
index e12ee72..b1ebe6d 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/EventBusService.java
@@ -26,8 +26,8 @@ import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Sets;
 import org.apache.isis.applib.services.eventbus.EventBusImplementation.EventListener;
+import org.apache.isis.commons.internal.collections._Sets;
 
 /**
  * A service implementing an Event Bus, allowing arbitrary events to be posted and
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerAbstract.java
index ca73163..0f4e9e9 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerAbstract.java
@@ -30,9 +30,9 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.i18n.TranslatableString;
 import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 /**
  * Abstract implementation of {@link ExceptionRecognizer} that looks 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerComposite.java b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerComposite.java
index af8469c..f7abf9a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerComposite.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerComposite.java
@@ -26,9 +26,9 @@ import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.services.i18n.TranslationService;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Convenience implementation of {@link ExceptionRecognizer} that loops through a list of
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerForType.java b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerForType.java
index 2435fb7..58b7aa3 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerForType.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/ExceptionRecognizerForType.java
@@ -24,7 +24,7 @@ import java.util.function.Predicate;
 
 import javax.jdo.JDODataStoreException;
 
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 /**
  * An specific implementation of {@link ExceptionRecognizer} that looks for an
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStore.java b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStore.java
index 46612ce..3ef98ec 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStore.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStore.java
@@ -25,9 +25,9 @@ import javax.annotation.PostConstruct;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizer;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizerComposite;
+import org.apache.isis.commons.internal.base._Strings;
 
 /**
  * Convenience implementation of the {@link ExceptionRecognizer} domain service that
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java
index 296227b..79954cf 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java
@@ -30,8 +30,8 @@ import org.apache.isis.applib.annotation.DomainServiceLayout;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.context._Context;
 import org.hsqldb.util.DatabaseManagerSwing;
 
 @DomainService(
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslatableString.java b/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslatableString.java
index 9e2b7d0..f3516e9 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslatableString.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslatableString.java
@@ -26,7 +26,7 @@ import java.util.regex.Pattern;
 
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.annotation.Value;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 @Value
 public final class TranslatableString {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/iactn/Interaction.java b/core/applib/src/main/java/org/apache/isis/applib/services/iactn/Interaction.java
index e9ce3b5..6eb2433 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/iactn/Interaction.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/iactn/Interaction.java
@@ -32,8 +32,6 @@ import org.apache.isis.applib.annotation.Value;
 import org.apache.isis.applib.events.domain.AbstractDomainEvent;
 import org.apache.isis.applib.events.domain.ActionDomainEvent;
 import org.apache.isis.applib.events.domain.PropertyDomainEvent;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.services.HasTransactionId;
 import org.apache.isis.applib.services.clock.ClockService;
 import org.apache.isis.applib.services.command.Command;
@@ -41,6 +39,8 @@ import org.apache.isis.applib.services.eventbus.EventBusService;
 import org.apache.isis.applib.services.metrics.MetricsService;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.applib.services.xactn.Transaction;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.schema.common.v1.DifferenceDto;
 import org.apache.isis.schema.common.v1.InteractionType;
 import org.apache.isis.schema.common.v1.PeriodDto;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/CatalogingSchemaOutputResolver.java b/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/CatalogingSchemaOutputResolver.java
index 3616b7e..43c9826 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/CatalogingSchemaOutputResolver.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/CatalogingSchemaOutputResolver.java
@@ -32,8 +32,8 @@ import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
 
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.w3c.dom.Attr;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbService.java b/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbService.java
index 8a1e27c..a0ef72e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbService.java
@@ -32,11 +32,11 @@ import javax.xml.bind.Unmarshaller;
 import org.apache.isis.applib.ApplicationException;
 import org.apache.isis.applib.NonRecoverableException;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.mixins.dto.Dto_downloadXsd;
 import org.apache.isis.applib.util.JaxbUtil;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Maps;
 
 public interface JaxbService {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java
index 4a3b930..3b546b7 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/layout/LayoutServiceMenu.java
@@ -29,10 +29,10 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.services.menu.MenuBarsService;
 import org.apache.isis.applib.value.Blob;
 import org.apache.isis.applib.value.Clob;
+import org.apache.isis.commons.internal.base._Strings;
 
 @DomainService(
         nature = NatureOfService.VIEW_MENU_ONLY,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
index 0809b81..445a0be 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
@@ -35,8 +35,8 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.value.Clob;
+import org.apache.isis.commons.internal.collections._Lists;
 
 @DomainService(
         nature = NatureOfService.VIEW_MENU_ONLY,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheInternal.java b/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheInternal.java
index 12e994e..86fb31e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheInternal.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheInternal.java
@@ -8,9 +8,9 @@ import javax.inject.Inject;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.services.WithTransactionScope;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java b/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java
index 9f45dbe..b3c219c 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/scratchpad/Scratchpad.java
@@ -25,7 +25,7 @@ import javax.enterprise.context.RequestScoped;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Maps;
 
 /**
  * This service (API and implementation) provides a mechanism to interchange information between multiple objects invoked in the same
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
index f81eb63..175b1cd 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
@@ -26,9 +26,9 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.ParameterLayout;
 import org.apache.isis.applib.annotation.RestrictTo;
 import org.apache.isis.applib.annotation.SemanticsOf;
-import org.apache.isis.applib.internal.resources._Resource;
 import org.apache.isis.applib.value.Clob;
 import org.apache.isis.applib.value.LocalResourcePath;
+import org.apache.isis.commons.internal.resources._Resource;
 
 
 @DomainService(
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
index 4e3d978..b526d0b 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
@@ -19,8 +19,8 @@ package org.apache.isis.applib.services.urlencoding;
 import java.nio.charset.StandardCharsets;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.memento._Mementos.EncoderDecoder;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.memento._Mementos.EncoderDecoder;
 
 public interface UrlEncodingService extends EncoderDecoder {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingAbstract.java
index 0fd3b4a..d5dd992 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingAbstract.java
@@ -18,8 +18,8 @@ package org.apache.isis.applib.services.urlencoding;
 
 import java.nio.charset.StandardCharsets;
 
-import org.apache.isis.applib.internal.base._Bytes;
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Bytes;
+import org.apache.isis.commons.internal.base._Strings;
 
 /**
  * to use, subclass and annotated with:
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression.java b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression.java
index 8b40336..be4f4dd 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression.java
@@ -4,8 +4,8 @@ import java.nio.charset.StandardCharsets;
 
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.internal.base._Bytes;
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Bytes;
+import org.apache.isis.commons.internal.base._Strings;
 
 @DomainService(
         nature = NatureOfService.DOMAIN,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/spec/AbstractSpecification2.java b/core/applib/src/main/java/org/apache/isis/applib/spec/AbstractSpecification2.java
index 818587a..c43541a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/spec/AbstractSpecification2.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/spec/AbstractSpecification2.java
@@ -21,8 +21,8 @@ package org.apache.isis.applib.spec;
 
 import java.lang.reflect.Method;
 
-import org.apache.isis.applib.internal.base._Casts;
 import org.apache.isis.applib.services.i18n.TranslatableString;
+import org.apache.isis.commons.internal.base._Casts;
 
 /**
  * Adapter to make it easy to write {@link Specification}s.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/tree/LazyTreeNode.java b/core/applib/src/main/java/org/apache/isis/applib/tree/LazyTreeNode.java
index ffe6554..a5a9200 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/tree/LazyTreeNode.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/tree/LazyTreeNode.java
@@ -23,8 +23,8 @@ import java.util.concurrent.atomic.LongAdder;
 import java.util.stream.Stream;
 
 import org.apache.isis.applib.annotation.Value;
-import org.apache.isis.applib.internal.base._Lazy;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.base._Lazy;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 @Value(semanticsProviderName="org.apache.isis.core.metamodel.facets.value.treenode.TreeNodeValueSemanticsProvider")
 public class LazyTreeNode<T> implements TreeNode<T> {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/tree/TreeNode.java b/core/applib/src/main/java/org/apache/isis/applib/tree/TreeNode.java
index 06413c3..a9719ec 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/tree/TreeNode.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/tree/TreeNode.java
@@ -28,7 +28,7 @@ import java.util.stream.StreamSupport;
 import javax.annotation.Nullable;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 
 public interface TreeNode<T> {
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/Enums.java b/core/applib/src/main/java/org/apache/isis/applib/util/Enums.java
index 72625f8..65d5a55 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/Enums.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/Enums.java
@@ -21,7 +21,7 @@ package org.apache.isis.applib.util;
 
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 
 public final class Enums {
     
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/Equality.java b/core/applib/src/main/java/org/apache/isis/applib/util/Equality.java
index 5d0ae44..fcf9f6f 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/Equality.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/Equality.java
@@ -4,8 +4,8 @@ import java.util.List;
 import java.util.Objects;
 import java.util.function.Function;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Fluent Object Equality Composition.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/Hashing.java b/core/applib/src/main/java/org/apache/isis/applib/util/Hashing.java
index 2d327d1..8e03dbe 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/Hashing.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/Hashing.java
@@ -4,7 +4,7 @@ import java.util.List;
 import java.util.Objects;
 import java.util.function.Function;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Fluent Object Hash Code Composition.
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/JaxbUtil.java b/core/applib/src/main/java/org/apache/isis/applib/util/JaxbUtil.java
index f699028..7ceb865 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/JaxbUtil.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/JaxbUtil.java
@@ -29,9 +29,9 @@ import javax.xml.bind.JAXBException;
 import javax.xml.bind.Marshaller;
 import javax.xml.bind.Unmarshaller;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.resources._Resource;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.resources._Resource;
 
 
 /**
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java b/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java
index cc33d95..8052c30 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java
@@ -31,9 +31,9 @@ import java.util.stream.Collectors;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.util.ObjectContracts.ObjectContract;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Strings;
 
 /**
  * Package private parser for ObjectContract.<br/><br/>
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContracts.java b/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContracts.java
index 868c402..1f62169 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContracts.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContracts.java
@@ -22,8 +22,8 @@ import java.util.Comparator;
 import java.util.Objects;
 import java.util.function.Function;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/TitleBuffer.java b/core/applib/src/main/java/org/apache/isis/applib/util/TitleBuffer.java
index 6d804a7..3c2f1e0 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/TitleBuffer.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/TitleBuffer.java
@@ -22,7 +22,7 @@ package org.apache.isis.applib.util;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 
 /**
  * Title buffer is a utility class to help produce titles for objects without
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/ToString.java b/core/applib/src/main/java/org/apache/isis/applib/util/ToString.java
index 0932254..4bfc09b 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/ToString.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/ToString.java
@@ -6,7 +6,7 @@ import java.util.Objects;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * Fluent Object to String Composition.
diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/ChangesDtoUtils.java b/core/applib/src/main/java/org/apache/isis/schema/utils/ChangesDtoUtils.java
index 88c9275..103571d 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/ChangesDtoUtils.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/ChangesDtoUtils.java
@@ -31,9 +31,8 @@ import javax.xml.bind.JAXBException;
 import javax.xml.bind.Marshaller;
 import javax.xml.bind.Unmarshaller;
 
-import org.apache.isis.applib.internal.resources._Resource;
-
 import org.apache.isis.applib.util.JaxbUtil;
+import org.apache.isis.commons.internal.resources._Resource;
 import org.apache.isis.schema.chg.v1.ChangesDto;
 
 public final class ChangesDtoUtils {
diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/CommandDtoUtils.java b/core/applib/src/main/java/org/apache/isis/schema/utils/CommandDtoUtils.java
index 8139d68..eea9dd4 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/CommandDtoUtils.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/CommandDtoUtils.java
@@ -30,8 +30,8 @@ import javax.xml.bind.JAXBException;
 import javax.xml.bind.Marshaller;
 import javax.xml.bind.Unmarshaller;
 
-import org.apache.isis.applib.internal.resources._Resource;
 import org.apache.isis.applib.util.JaxbUtil;
+import org.apache.isis.commons.internal.resources._Resource;
 import org.apache.isis.schema.cmd.v1.ActionDto;
 import org.apache.isis.schema.cmd.v1.CommandDto;
 import org.apache.isis.schema.cmd.v1.MapDto;
diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java b/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
index 252a1f7..e5c74fa 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
@@ -18,7 +18,7 @@
  */
 package org.apache.isis.schema.utils;
 
-import static org.apache.isis.applib.internal.collections._Maps.entry;
+import static org.apache.isis.commons.internal.collections._Maps.entry;
 
 import java.math.BigDecimal;
 import java.math.BigInteger;
@@ -28,15 +28,15 @@ import java.util.Objects;
 import java.util.Optional;
 import java.util.function.Function;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.context._Context;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.value.Blob;
 import org.apache.isis.applib.value.Clob;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.context._Context;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.schema.cmd.v1.MapDto;
 import org.apache.isis.schema.cmd.v1.ParamDto;
 import org.apache.isis.schema.common.v1.BlobDto;
diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/InteractionDtoUtils.java b/core/applib/src/main/java/org/apache/isis/schema/utils/InteractionDtoUtils.java
index 0c50997..199f899 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/InteractionDtoUtils.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/InteractionDtoUtils.java
@@ -34,13 +34,13 @@ import javax.xml.bind.JAXBException;
 import javax.xml.bind.Marshaller;
 import javax.xml.bind.Unmarshaller;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.resources._Resource;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.iactn.Interaction;
 import org.apache.isis.applib.util.JaxbUtil;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.resources._Resource;
 import org.apache.isis.schema.cmd.v1.ParamDto;
 import org.apache.isis.schema.cmd.v1.ParamsDto;
 import org.apache.isis.schema.common.v1.InteractionType;
diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/MemberExecutionDtoUtils.java b/core/applib/src/main/java/org/apache/isis/schema/utils/MemberExecutionDtoUtils.java
index f31ff9c..b0966a8 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/MemberExecutionDtoUtils.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/MemberExecutionDtoUtils.java
@@ -29,8 +29,8 @@ import javax.xml.bind.Unmarshaller;
 import javax.xml.namespace.QName;
 import javax.xml.transform.stream.StreamSource;
 
-import org.apache.isis.applib.internal.base._Casts;
 import org.apache.isis.applib.util.JaxbUtil;
+import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.schema.common.v1.DifferenceDto;
 import org.apache.isis.schema.common.v1.PeriodDto;
 import org.apache.isis.schema.ixn.v1.MemberExecutionDto;
diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntitiesAdapter.java b/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntitiesAdapter.java
index 3e2e2a1..ab962d4 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntitiesAdapter.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntitiesAdapter.java
@@ -21,9 +21,9 @@ import java.util.List;
 import javax.inject.Inject;
 import javax.xml.bind.annotation.adapters.XmlAdapter;
 
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.schema.common.v1.OidDto;
 import org.apache.isis.schema.common.v1.OidsDto;
 
diff --git a/core/applib/src/test/java/org/apache/isis/applib/Module_Util_transitiveDependenciesOf_Test.java b/core/applib/src/test/java/org/apache/isis/applib/Module_Util_transitiveDependenciesOf_Test.java
index ce4301e..2c29856 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/Module_Util_transitiveDependenciesOf_Test.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/Module_Util_transitiveDependenciesOf_Test.java
@@ -25,8 +25,8 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Set;
 
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Sets;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
diff --git a/core/applib/src/test/java/org/apache/isis/applib/internal/base/BytesTest.java b/core/applib/src/test/java/org/apache/isis/applib/internal/base/BytesTest.java
index 2933a2f..66585bd 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/internal/base/BytesTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/internal/base/BytesTest.java
@@ -24,7 +24,9 @@ import static org.hamcrest.Matchers.lessThan;
 import java.nio.charset.StandardCharsets;
 import java.util.Base64;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Bytes;
+import org.apache.isis.commons.internal.base._Strings;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/core/applib/src/test/java/org/apache/isis/applib/internal/base/NullSafeTest.java b/core/applib/src/test/java/org/apache/isis/applib/internal/base/NullSafeTest.java
index 2ff8422..58c1834 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/internal/base/NullSafeTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/internal/base/NullSafeTest.java
@@ -28,6 +28,8 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._Strings;
 import org.junit.Assert;
 import org.junit.Test;
 
diff --git a/core/applib/src/test/java/org/apache/isis/applib/internal/base/ReductionTest.java b/core/applib/src/test/java/org/apache/isis/applib/internal/base/ReductionTest.java
index aa6d861..7b5a4ea 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/internal/base/ReductionTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/internal/base/ReductionTest.java
@@ -23,7 +23,8 @@ import static org.hamcrest.CoreMatchers.is;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._Reduction;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.junit.Assert;
 import org.junit.Test;
 
diff --git a/core/applib/src/test/java/org/apache/isis/applib/internal/base/StringsTest.java b/core/applib/src/test/java/org/apache/isis/applib/internal/base/StringsTest.java
index f9cf466..3ebc1ed 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/internal/base/StringsTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/internal/base/StringsTest.java
@@ -25,7 +25,9 @@ import static org.hamcrest.CoreMatchers.nullValue;
 import java.nio.charset.StandardCharsets;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Bytes;
+import org.apache.isis.commons.internal.base._Strings;
 import org.junit.Assert;
 import org.junit.Test;
 
diff --git a/core/applib/src/test/java/org/apache/isis/applib/internal/compare/ComparatorsTest.java b/core/applib/src/test/java/org/apache/isis/applib/internal/compare/ComparatorsTest.java
index 4d21a50..dc83cf2 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/internal/compare/ComparatorsTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/internal/compare/ComparatorsTest.java
@@ -27,7 +27,8 @@ import java.util.List;
 import java.util.SortedSet;
 import java.util.TreeSet;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.compare._Comparators;
 import org.junit.Assert;
 import org.junit.Rule;
 import org.junit.Test;
diff --git a/core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java b/core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java
index df384f1..2fb86aa 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java
@@ -28,13 +28,14 @@ import java.math.BigDecimal;
 import java.math.BigInteger;
 import java.util.Date;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.memento._Mementos.Memento;
-import org.apache.isis.applib.internal.memento._Mementos.SerializingAdapter;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
 import org.apache.isis.applib.services.urlencoding.UrlEncodingServiceUsingBaseEncodingAbstract;
 import org.apache.isis.applib.services.urlencoding.UrlEncodingServiceWithCompression;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.memento._Mementos;
+import org.apache.isis.commons.internal.memento._Mementos.Memento;
+import org.apache.isis.commons.internal.memento._Mementos.SerializingAdapter;
 import org.joda.time.LocalDate;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/core/applib/src/test/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStoreTest.java b/core/applib/src/test/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStoreTest.java
index 80c6947..5e991b7 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStoreTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/services/exceprecog/jdo/ExceptionRecognizerCompositeForJdoObjectStoreTest.java
@@ -23,7 +23,7 @@ import static org.junit.Assert.assertThat;
 
 import java.util.Collections;
 
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.junit.Before;
 import org.junit.Test;
 
diff --git a/core/applib/src/test/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotServiceAbstractTest.java b/core/applib/src/test/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotServiceAbstractTest.java
index 25398ef..d8addfd 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotServiceAbstractTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/services/xmlsnapshot/XmlSnapshotServiceAbstractTest.java
@@ -24,7 +24,7 @@ import java.math.BigInteger;
 import java.nio.charset.Charset;
 import java.util.Locale;
 
-import org.apache.isis.applib.internal.resources._Resource;
+import org.apache.isis.commons.internal.resources._Resource;
 import org.joda.time.LocalDate;
 import org.junit.Before;
 import org.junit.Test;
diff --git a/core/applib/src/test/java/org/apache/isis/applib/util/ObjectContractsTest_equals_and_hashCode.java b/core/applib/src/test/java/org/apache/isis/applib/util/ObjectContractsTest_equals_and_hashCode.java
index 15dae41..50c9123 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/util/ObjectContractsTest_equals_and_hashCode.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/util/ObjectContractsTest_equals_and_hashCode.java
@@ -18,7 +18,7 @@ package org.apache.isis.applib.util;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.unittestsupport.value.ValueTypeContractTestAbstract;
 import org.junit.Before;
 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java
deleted file mode 100644
index 6e178b7..0000000
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/package-info.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-/**
- * <h1>Internal API</h1>
- * Internal classes, contributing to the internal proprietary API. 
- * These may be changed or removed without notice!
- * <p>
- * <b>WARNING</b>: 
- * Do NOT use any of the classes provided by this package!
- * </p>
- */
-package org.apache.isis.applib.internal.exceptions;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/functions/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/functions/package-info.java
deleted file mode 100644
index a517ed7..0000000
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/functions/package-info.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-/**
- * <h1>Internal API</h1>
- * Internal classes, contributing to the internal proprietary API. 
- * These may be changed or removed without notice!
- * <p>
- * <b>WARNING</b>: 
- * Do NOT use any of the classes provided by this package!
- * </p>
- */
-package org.apache.isis.applib.internal.functions;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/memento/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
deleted file mode 100644
index 098b24b..0000000
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-/**
- * <h1>Internal API</h1>
- * Internal classes, contributing to the internal proprietary API. 
- * These may be changed or removed without notice!
- * <p>
- * <b>WARNING</b>: 
- * Do NOT use any of the classes provided by this package!
- * </p>
- */
-package org.apache.isis.applib.internal.memento;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/package-info.java b/core/commons/src/main/java/org/apache/isis/applib/internal/resources/package-info.java
deleted file mode 100644
index a6e3073..0000000
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/package-info.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-/**
- * <h1>Internal API</h1>
- * Internal classes, contributing to the internal proprietary API. 
- * These may be changed or removed without notice!
- * <p>
- * <b>WARNING</b>: 
- * Do NOT use any of the classes provided by this package!
- * </p>
- */
-package org.apache.isis.applib.internal.resources;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/_Constants.java b/core/commons/src/main/java/org/apache/isis/commons/internal/_Constants.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/_Constants.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/_Constants.java
index 3f3093e..85c86a4 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/_Constants.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/_Constants.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal;
+package org.apache.isis.commons.internal;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes.java
similarity index 99%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes.java
index b7d0261..107d8db 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressor.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes_GZipCompressor.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressor.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes_GZipCompressor.java
index 8a17814..fa40339 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressor.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes_GZipCompressor.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressorSmart.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes_GZipCompressorSmart.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressorSmart.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes_GZipCompressorSmart.java
index bb40430..b42b5a4 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Bytes_GZipCompressorSmart.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Bytes_GZipCompressorSmart.java
@@ -17,12 +17,12 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.io.IOException;
 import java.util.Arrays;
 
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Casts.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Casts.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Casts.java
index d201ff6..3757b0e 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Casts.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.util.Objects;
 import java.util.function.Supplier;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Lazy.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Lazy.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Lazy.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Lazy.java
index 802ec57..f10f7c5 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Lazy.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Lazy.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.util.Objects;
 import java.util.function.Supplier;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_NullSafe.java
similarity index 99%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_NullSafe.java
index f3c23a2..3bd6c63 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_NullSafe.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_NullSafe.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.util.Collection;
 import java.util.Comparator;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Reduction.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Reduction.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Reduction.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Reduction.java
index a65aef1..0ab5a8e 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Reduction.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Reduction.java
@@ -1,4 +1,4 @@
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.util.Objects;
 import java.util.Optional;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings.java
index cfafe99..61730d5 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings.java
@@ -17,9 +17,9 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
-import static org.apache.isis.applib.internal.base._Strings_SplitIterator.splitIterator;
+import static org.apache.isis.commons.internal.base._Strings_SplitIterator.splitIterator;
 
 import java.nio.charset.Charset;
 import java.util.Objects;
@@ -31,8 +31,8 @@ import java.util.stream.StreamSupport;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.base._Bytes.BytesOperator;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Bytes.BytesOperator;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_NaturalNames.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings_NaturalNames.java
similarity index 98%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_NaturalNames.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings_NaturalNames.java
index 3f03a84..175a41f 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_NaturalNames.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings_NaturalNames.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import javax.annotation.Nullable;
 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_SplitIterator.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings_SplitIterator.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_SplitIterator.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings_SplitIterator.java
index 3e89771..bf02dd1 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/_Strings_SplitIterator.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/_Strings_SplitIterator.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.base;
+package org.apache.isis.commons.internal.base;
 
 import java.util.Collections;
 import java.util.Iterator;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/base/package-info.java
similarity index 95%
copy from core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
copy to core/commons/src/main/java/org/apache/isis/commons/internal/base/package-info.java
index d2b2cf0..f34bab6 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/base/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.base;
\ No newline at end of file
+package org.apache.isis.commons.internal.base;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays.java
similarity index 96%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays.java
index e4ef798..a2486bf 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.lang.reflect.Array;
 import java.util.Collection;
@@ -26,9 +26,9 @@ import java.util.stream.Collector;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_Collector.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays_Collector.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_Collector.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays_Collector.java
index b0dd466..17fdc7a 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_Collector.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays_Collector.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.lang.reflect.Array;
 import java.util.Collections;
@@ -28,7 +28,7 @@ import java.util.function.Function;
 import java.util.function.Supplier;
 import java.util.stream.Collector;
 
-import org.apache.isis.applib.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Casts;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_CollectorUnknownSize.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays_CollectorUnknownSize.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_CollectorUnknownSize.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays_CollectorUnknownSize.java
index f9f976f..d1d547e 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Arrays_CollectorUnknownSize.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Arrays_CollectorUnknownSize.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.lang.reflect.Array;
 import java.util.ArrayList;
@@ -30,7 +30,7 @@ import java.util.function.Function;
 import java.util.function.Supplier;
 import java.util.stream.Collector;
 
-import org.apache.isis.applib.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Casts;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections.java
similarity index 98%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections.java
index dd117f0..91dffda 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.lang.reflect.Field;
 import java.lang.reflect.ParameterizedType;
@@ -40,7 +40,7 @@ import java.util.stream.Collectors;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_Collector.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections_Collector.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_Collector.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections_Collector.java
index 10a8b7a..3d82f42 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_Collector.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections_Collector.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.util.Collection;
 import java.util.Collections;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_SortedSetOfList.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections_SortedSetOfList.java
similarity index 98%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_SortedSetOfList.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections_SortedSetOfList.java
index d78558c..6b65bc3 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Collections_SortedSetOfList.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Collections_SortedSetOfList.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.util.Collection;
 import java.util.Comparator;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Lists.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Lists.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Lists.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Lists.java
index eaa6595..adcb841 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Lists.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Lists.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -31,7 +31,7 @@ import java.util.stream.Collectors;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Maps.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Maps.java
similarity index 98%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Maps.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Maps.java
index 059b02d..dbf8497 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Maps.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Maps.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.util.AbstractMap;
 import java.util.Collections;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Multimaps.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Multimaps.java
similarity index 99%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Multimaps.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Multimaps.java
index 5ad592b..a2a7ef0 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Multimaps.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Multimaps.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.util.ArrayList;
 import java.util.Collection;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Sets.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Sets.java
similarity index 98%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Sets.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Sets.java
index 6abd9b1..e12c8a1 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/_Sets.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/_Sets.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.collections;
+package org.apache.isis.commons.internal.collections;
 
 import java.util.Collection;
 import java.util.Collections;
@@ -34,7 +34,7 @@ import java.util.stream.Stream;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/package-info.java
similarity index 95%
copy from core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
copy to core/commons/src/main/java/org/apache/isis/commons/internal/collections/package-info.java
index d2b2cf0..e6e2c22 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/collections/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.base;
\ No newline at end of file
+package org.apache.isis.commons.internal.collections;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators.java b/core/commons/src/main/java/org/apache/isis/commons/internal/compare/_Comparators.java
similarity index 96%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/compare/_Comparators.java
index da189df..8c5a42b 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/compare/_Comparators.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.compare;
+package org.apache.isis.commons.internal.compare;
 
 import java.util.Comparator;
 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators_SequenceCompare.java b/core/commons/src/main/java/org/apache/isis/commons/internal/compare/_Comparators_SequenceCompare.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators_SequenceCompare.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/compare/_Comparators_SequenceCompare.java
index dfbacee..a586288 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/compare/_Comparators_SequenceCompare.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/compare/_Comparators_SequenceCompare.java
@@ -16,13 +16,13 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.applib.internal.compare;
+package org.apache.isis.commons.internal.compare;
 
 import java.util.StringTokenizer;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/discover/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/compare/package-info.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/discover/package-info.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/compare/package-info.java
index 7dccefa..f34a9f7 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/discover/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/compare/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.discover;
\ No newline at end of file
+package org.apache.isis.commons.internal.compare;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Context.java b/core/commons/src/main/java/org/apache/isis/commons/internal/context/_Context.java
similarity index 97%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/context/_Context.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/context/_Context.java
index 953a7b5..0da16ae 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Context.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/context/_Context.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.context;
+package org.apache.isis.commons.internal.context;
 
 import java.util.HashMap;
 import java.util.List;
@@ -26,9 +26,9 @@ import java.util.Objects;
 import java.util.function.Function;
 import java.util.function.Supplier;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java b/core/commons/src/main/java/org/apache/isis/commons/internal/context/_Plugin.java
similarity index 96%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/context/_Plugin.java
index b328945..c2ac726 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/context/_Plugin.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/context/_Plugin.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.context;
+package org.apache.isis.commons.internal.context;
 
 import java.util.Objects;
 import java.util.ServiceLoader;
@@ -26,8 +26,8 @@ import java.util.function.Function;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Sets;
 import org.apache.isis.core.plugins.PluginResolveException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/context/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/context/package-info.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/context/package-info.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/context/package-info.java
index 84caa68..b832b66 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/context/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/context/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.context;
\ No newline at end of file
+package org.apache.isis.commons.internal.context;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java b/core/commons/src/main/java/org/apache/isis/commons/internal/discover/_Discover.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/discover/_Discover.java
index 7593f27..a9e98bf 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/discover/_Discover.java
@@ -17,11 +17,11 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.discover;
+package org.apache.isis.commons.internal.discover;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 import org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin;
 import org.slf4j.Logger;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/discover/package-info.java
similarity index 95%
copy from core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
copy to core/commons/src/main/java/org/apache/isis/commons/internal/discover/package-info.java
index d2b2cf0..a969e84 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/discover/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.base;
\ No newline at end of file
+package org.apache.isis.commons.internal.discover;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/_Exceptions.java b/core/commons/src/main/java/org/apache/isis/commons/internal/exceptions/_Exceptions.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/_Exceptions.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/exceptions/_Exceptions.java
index b4a7312..4d1c557 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/exceptions/_Exceptions.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/exceptions/_Exceptions.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.exceptions;
+package org.apache.isis.commons.internal.exceptions;
 
 import java.util.Collections;
 import java.util.List;
@@ -26,8 +26,8 @@ import java.util.stream.Stream;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/exceptions/package-info.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/collections/package-info.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/exceptions/package-info.java
index 455f8c3..b562021 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/collections/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/exceptions/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.collections;
\ No newline at end of file
+package org.apache.isis.commons.internal.exceptions;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions.java b/core/commons/src/main/java/org/apache/isis/commons/internal/functions/_Functions.java
similarity index 96%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/functions/_Functions.java
index 9a33621..d5bfb51 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/functions/_Functions.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.applib.internal.functions;
+package org.apache.isis.commons.internal.functions;
 
 import java.util.function.Function;
 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions_IndexAwareFunctionAdapter.java b/core/commons/src/main/java/org/apache/isis/commons/internal/functions/_Functions_IndexAwareFunctionAdapter.java
similarity index 91%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions_IndexAwareFunctionAdapter.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/functions/_Functions_IndexAwareFunctionAdapter.java
index 883abe0..7b9aaa6 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/functions/_Functions_IndexAwareFunctionAdapter.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/functions/_Functions_IndexAwareFunctionAdapter.java
@@ -16,11 +16,11 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.applib.internal.functions;
+package org.apache.isis.commons.internal.functions;
 
 import java.util.function.Function;
 
-import org.apache.isis.applib.internal.functions._Functions.IndexAwareFunction;
+import org.apache.isis.commons.internal.functions._Functions.IndexAwareFunction;
 
 /**
  * Package private mixin for _Functions. <br/>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/functions/package-info.java
similarity index 95%
copy from core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
copy to core/commons/src/main/java/org/apache/isis/commons/internal/functions/package-info.java
index d2b2cf0..17e00e3 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/functions/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.base;
\ No newline at end of file
+package org.apache.isis.commons.internal.functions;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java b/core/commons/src/main/java/org/apache/isis/commons/internal/memento/_Mementos.java
similarity index 98%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/memento/_Mementos.java
index 17d991e..70c9df3 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/memento/_Mementos.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.memento;
+package org.apache.isis.commons.internal.memento;
 
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java b/core/commons/src/main/java/org/apache/isis/commons/internal/memento/_Mementos_MementoDefault.java
similarity index 87%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/memento/_Mementos_MementoDefault.java
index 0e1fe85..bdda879 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/memento/_Mementos_MementoDefault.java
@@ -17,7 +17,7 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.memento;
+package org.apache.isis.commons.internal.memento;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -32,14 +32,14 @@ import java.util.Set;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.collections._Sets;
-import org.apache.isis.applib.internal.context._Context;
-import org.apache.isis.applib.internal.memento._Mementos.EncoderDecoder;
-import org.apache.isis.applib.internal.memento._Mementos.Memento;
-import org.apache.isis.applib.internal.memento._Mementos.SerializingAdapter;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Sets;
+import org.apache.isis.commons.internal.context._Context;
+import org.apache.isis.commons.internal.memento._Mementos.EncoderDecoder;
+import org.apache.isis.commons.internal.memento._Mementos.Memento;
+import org.apache.isis.commons.internal.memento._Mementos.SerializingAdapter;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/compare/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/memento/package-info.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/compare/package-info.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/memento/package-info.java
index 5ab700c..99476f3 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/compare/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/memento/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.compare;
\ No newline at end of file
+package org.apache.isis.commons.internal.memento;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/package-info.java
similarity index 96%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/package-info.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/package-info.java
index ae7cd45..9fa8283 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal;
\ No newline at end of file
+package org.apache.isis.commons.internal;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource.java b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource.java
index 193f78d..951745d 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource.java
@@ -17,16 +17,16 @@
  *  under the License.
  */
 
-package org.apache.isis.applib.internal.resources;
+package org.apache.isis.commons.internal.resources;
 
 import java.io.IOException;
 import java.io.InputStream;
 import java.nio.charset.Charset;
 import java.util.Objects;
 
-import org.apache.isis.applib.internal.base._Bytes;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.base._Bytes;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.context._Context;
 
 /**
  * <h1>- internal use only -</h1>
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_ContextPath.java b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_ContextPath.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_ContextPath.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_ContextPath.java
index 7a722f5..e5aa304 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_ContextPath.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_ContextPath.java
@@ -18,7 +18,7 @@
  */
 
 
-package org.apache.isis.applib.internal.resources;
+package org.apache.isis.commons.internal.resources;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_Path.java b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_Path.java
similarity index 94%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_Path.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_Path.java
index 3b2a183..a5342d1 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_Path.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_Path.java
@@ -18,9 +18,9 @@
  */
 
 
-package org.apache.isis.applib.internal.resources;
+package org.apache.isis.commons.internal.resources;
 
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_RestfulPath.java b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_RestfulPath.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_RestfulPath.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_RestfulPath.java
index e5fb3d9..a43ae13 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/resources/_Resource_RestfulPath.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/_Resource_RestfulPath.java
@@ -18,7 +18,7 @@
  */
 
 
-package org.apache.isis.applib.internal.resources;
+package org.apache.isis.commons.internal.resources;
 
 /**
  * 
diff --git a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/package-info.java
similarity index 95%
rename from core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
rename to core/commons/src/main/java/org/apache/isis/commons/internal/resources/package-info.java
index d2b2cf0..435400b 100644
--- a/core/commons/src/main/java/org/apache/isis/applib/internal/base/package-info.java
+++ b/core/commons/src/main/java/org/apache/isis/commons/internal/resources/package-info.java
@@ -25,4 +25,4 @@
  * Do NOT use any of the classes provided by this package!
  * </p>
  */
-package org.apache.isis.applib.internal.base;
\ No newline at end of file
+package org.apache.isis.commons.internal.resources;
\ No newline at end of file
diff --git a/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPlugin.java b/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPlugin.java
index 8976967..bb68ed9 100644
--- a/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPlugin.java
+++ b/core/commons/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPlugin.java
@@ -23,7 +23,7 @@ import java.util.function.Predicate;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 
 public interface ProxyFactoryPlugin {
 
diff --git a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract.java b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract.java
index cc90cb2..e43d96a 100644
--- a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract.java
+++ b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract.java
@@ -24,7 +24,6 @@ import org.apache.isis.applib.NonRecoverableException;
 import org.apache.isis.applib.RecoverableException;
 import org.apache.isis.applib.fixtures.FixtureClock;
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.clock.ClockService;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
@@ -32,6 +31,7 @@ import org.apache.isis.applib.services.scratchpad.Scratchpad;
 import org.apache.isis.applib.services.sessmgmt.SessionManagementService;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.applib.services.xactn.TransactionService;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.runtime.system.transaction.IsisTransactionManager;
 import org.apache.isis.core.specsupport.scenarios.ScenarioExecution;
 import org.apache.isis.core.specsupport.specs.CukeGlueAbstract;
diff --git a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract3.java b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract3.java
index ea9c68c..c48e37c 100644
--- a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract3.java
+++ b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IntegrationTestAbstract3.java
@@ -24,9 +24,9 @@ import org.apache.isis.applib.AppManifest;
 import org.apache.isis.applib.Module;
 import org.apache.isis.applib.NonRecoverableException;
 import org.apache.isis.applib.RecoverableException;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.jdosupport.IsisJdoSupport;
 import org.apache.isis.applib.services.xactn.TransactionService;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.runtime.headless.HeadlessWithBootstrappingAbstract;
 import org.apache.isis.core.runtime.headless.IsisSystem;
 import org.apache.isis.core.runtime.headless.logging.LogConfig;
diff --git a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java
index c2fef4d..0a9be65 100644
--- a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java
+++ b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java
@@ -28,10 +28,10 @@ import java.util.stream.Collectors;
 import org.apache.isis.applib.AppManifest;
 import org.apache.isis.applib.fixtures.FixtureClock;
 import org.apache.isis.applib.fixtures.InstallableFixture;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.services.command.Command;
 import org.apache.isis.applib.services.command.CommandContext;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
diff --git a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/ThrowableMatchers.java b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/ThrowableMatchers.java
index d4a4587..caa2183 100644
--- a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/ThrowableMatchers.java
+++ b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/ThrowableMatchers.java
@@ -18,7 +18,7 @@ package org.apache.isis.core.integtestsupport;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.hamcrest.Description;
 import org.hamcrest.TypeSafeMatcher;
 
diff --git a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/scenarios/ObjectFactoryForIntegration.java b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/scenarios/ObjectFactoryForIntegration.java
index dd56abd..381ad6c 100644
--- a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/scenarios/ObjectFactoryForIntegration.java
+++ b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/scenarios/ObjectFactoryForIntegration.java
@@ -21,8 +21,8 @@ package org.apache.isis.core.integtestsupport.scenarios;
 import java.lang.reflect.Constructor;
 import java.util.Map;
 
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.core.runtime.headless.IsisSystem;
 
 import cucumber.api.java.ObjectFactory;
diff --git a/core/metamodel-legacy/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceLegacyInternalDefault.java b/core/metamodel-legacy/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceLegacyInternalDefault.java
index ffca0b3..27ba440 100644
--- a/core/metamodel-legacy/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceLegacyInternalDefault.java
+++ b/core/metamodel-legacy/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceLegacyInternalDefault.java
@@ -32,13 +32,13 @@ import org.apache.isis.applib.RepositoryException;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.query.QueryFindAllInstances;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.repository.RepositoryServiceLegacy;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.applib.services.xactn.TransactionService;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/encoding/FieldType.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/encoding/FieldType.java
index 9309746..6febbfd 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/encoding/FieldType.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/encoding/FieldType.java
@@ -31,7 +31,7 @@ import java.lang.reflect.InvocationTargetException;
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/exceptions/ExceptionUtils.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/exceptions/ExceptionUtils.java
index f684dc8..ce26bd2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/exceptions/ExceptionUtils.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/exceptions/ExceptionUtils.java
@@ -26,7 +26,7 @@ import java.sql.SQLException;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 
 /**
  * <p>Provides utilities for manipulating and examining 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java
index e581d56..bf89622 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/factory/InstanceUtil.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.commons.factory;
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.commons.ensure.Assert;
 import org.apache.isis.core.commons.lang.ObjectExtensions;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ClassUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ClassUtil.java
index 1c1f75f..59611dc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ClassUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ClassUtil.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 
 import com.google.common.collect.Maps;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/MethodInvocationPreprocessor.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/MethodInvocationPreprocessor.java
index aba3707..90131b6 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/MethodInvocationPreprocessor.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/MethodInvocationPreprocessor.java
@@ -26,10 +26,10 @@ import java.util.List;
 import java.util.Set;
 import java.util.SortedSet;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Arrays;
-import org.apache.isis.applib.internal.collections._Collections;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Arrays;
+import org.apache.isis.commons.internal.collections._Collections;
 
 /**
  * Utility for method invocation pre-processing.
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ObjectExtensions.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ObjectExtensions.java
index 128d3c5..20b59e3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ObjectExtensions.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ObjectExtensions.java
@@ -23,7 +23,7 @@ import java.io.IOException;
 import java.lang.reflect.Method;
 import java.util.List;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 
 /**
  * Helpers to co-erce non-generic values into type-safe generics without
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ResourceUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ResourceUtil.java
index 276adcf..95ccee6 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ResourceUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/ResourceUtil.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.commons.lang;
 
 import java.io.InputStream;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 
 /**
  * Adapted from Ibatis Common, now with some additional guava stuff.
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/StringExtensions.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/StringExtensions.java
index 24c5f7c..d66b21f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/StringExtensions.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/lang/StringExtensions.java
@@ -24,8 +24,8 @@ import java.util.Collections;
 import java.util.List;
 import java.util.StringTokenizer;
 
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.util.Enums;
+import org.apache.isis.commons.internal.base._Strings;
 
 import com.google.common.base.Strings;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/commons/resource/ResourceStreamSourceContextLoaderClassPath.java b/core/metamodel/src/main/java/org/apache/isis/core/commons/resource/ResourceStreamSourceContextLoaderClassPath.java
index 2cad737..8a5ef7c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/commons/resource/ResourceStreamSourceContextLoaderClassPath.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/commons/resource/ResourceStreamSourceContextLoaderClassPath.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.commons.resource;
 
 import java.io.InputStream;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.commons.lang.StringExtensions;
 
 /**
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/IsisJdoMetamodelPlugin.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/IsisJdoMetamodelPlugin.java
index cad9a87..767abf9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/IsisJdoMetamodelPlugin.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/IsisJdoMetamodelPlugin.java
@@ -4,7 +4,7 @@ import java.lang.reflect.Method;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 
 public interface IsisJdoMetamodelPlugin {
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java
index ed2b028..bea237f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java
@@ -25,7 +25,7 @@ import java.util.Map;
 import java.util.function.Function;
 
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.commons.lang.ListExtensions;
 import org.apache.isis.core.commons.lang.MethodExtensions;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid.java
index 5e000cb..c917267 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/oid/Oid.java
@@ -20,8 +20,8 @@
 package org.apache.isis.core.metamodel.adapter.oid;
 
 import org.apache.isis.applib.annotation.Value;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.services.bookmark.Bookmark;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.commons.encoding.Encodable;
 import org.apache.isis.core.metamodel.adapter.version.Version;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/FacetUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/FacetUtil.java
index bf8b727..e8f2a5a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/FacetUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/FacetUtil.java
@@ -24,8 +24,8 @@ import java.util.Hashtable;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.base._Casts;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Casts;
 
 import com.google.common.collect.Lists;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/CollectionUtils.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/CollectionUtils.java
index 8c188da..d012d83 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/CollectionUtils.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/CollectionUtils.java
@@ -36,11 +36,11 @@ import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.concurrent.CopyOnWriteArraySet;
 import java.util.function.Function;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Arrays;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Arrays;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Sets;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacet;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java
index bb8fefe..c6016dc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/FacetedMethod.java
@@ -25,7 +25,7 @@ import java.util.Collections;
 import java.util.List;
 
 import org.apache.isis.applib.Identifier;
-import org.apache.isis.applib.internal.collections._Arrays;
+import org.apache.isis.commons.internal.collections._Arrays;
 import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java
index 197e407..a773198 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.metamodel.facets;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Collections;
+import org.apache.isis.commons.internal.collections._Collections;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 
 public abstract class PropertyOrCollectionIdentifyingFacetFactoryAbstract
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacet.java
index 9614100..87356ba 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacet.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacet.java
@@ -26,8 +26,8 @@ import java.lang.reflect.Type;
 import java.lang.reflect.TypeVariable;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Arrays;
-import org.apache.isis.applib.internal.collections._Collections;
+import org.apache.isis.commons.internal.collections._Arrays;
+import org.apache.isis.commons.internal.collections._Collections;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.SingleClassValueFacet;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java
index 9707c20..6347a35 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/ActionAnnotationFacetFactory.java
@@ -24,8 +24,8 @@ import java.util.List;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.events.domain.ActionDomainEvent;
-import org.apache.isis.applib.internal.collections._Collections;
 import org.apache.isis.applib.services.HasTransactionId;
+import org.apache.isis.commons.internal.collections._Collections;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java
index a071efe..fd9f6e5 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java
@@ -32,7 +32,6 @@ import org.apache.isis.applib.NonRecoverableException;
 import org.apache.isis.applib.RecoverableException;
 import org.apache.isis.applib.events.domain.AbstractDomainEvent;
 import org.apache.isis.applib.events.domain.ActionDomainEvent;
-import org.apache.isis.applib.internal.base._Casts;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.clock.ClockService;
@@ -46,6 +45,7 @@ import org.apache.isis.applib.services.queryresultscache.QueryResultsCache;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.applib.services.xactn.TransactionService;
 import org.apache.isis.applib.services.xactn.TransactionState;
+import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.commons.config.IsisConfiguration;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java
index dbbf1b8..a13c4c2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java
@@ -21,9 +21,9 @@ package org.apache.isis.core.metamodel.facets.actions.action.invocation;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Arrays;
 import org.apache.isis.applib.services.bookmark.Bookmark;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Arrays;
 import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
index 6569bc5..e536dcc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.metamodel.facets.actions.defaults.method;
 import java.lang.reflect.Method;
 import java.util.List;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java
index 2644d7a..38673e2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessor.java
@@ -23,7 +23,7 @@ import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactory.java
index 0c12a93..a31e2eb 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/CollectionAnnotationFacetFactory.java
@@ -27,7 +27,7 @@ import java.util.List;
 
 import org.apache.isis.applib.annotation.Collection;
 import org.apache.isis.applib.events.domain.CollectionDomainEvent;
-import org.apache.isis.applib.internal.collections._Collections;
+import org.apache.isis.commons.internal.collections._Collections;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/CollectionFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/CollectionFacetFactory.java
index 132c6ae..ba3bcef 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/CollectionFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/CollectionFacetFactory.java
@@ -19,8 +19,8 @@
 
 package org.apache.isis.core.metamodel.facets.collections.javautilcollection;
 
-import org.apache.isis.applib.internal.collections._Arrays;
-import org.apache.isis.applib.internal.collections._Collections;
+import org.apache.isis.commons.internal.collections._Arrays;
+import org.apache.isis.commons.internal.collections._Collections;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java
index ffe500d..9b2022d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/ChoicesFacetFromBoundedAbstract.java
@@ -21,12 +21,12 @@ package org.apache.isis.core.metamodel.facets.object.choices;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Arrays;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.query.QueryFindAllInstances;
 import org.apache.isis.applib.services.wrapper.events.UsabilityEvent;
 import org.apache.isis.applib.services.wrapper.events.ValidityEvent;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Arrays;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/auditing/AuditableFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/auditing/AuditableFacetForDomainObjectAnnotation.java
index 3b0319b..3173551 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/auditing/AuditableFacetForDomainObjectAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/auditing/AuditableFacetForDomainObjectAnnotation.java
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.isis.applib.annotation.Auditing;
 import org.apache.isis.applib.annotation.DomainObject;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.object.audit.AuditableFacet;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/publishing/PublishedObjectFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/publishing/PublishedObjectFacetForDomainObjectAnnotation.java
index ab942c4..ca57366 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/publishing/PublishedObjectFacetForDomainObjectAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/publishing/PublishedObjectFacetForDomainObjectAnnotation.java
@@ -23,7 +23,7 @@ import java.util.List;
 
 import org.apache.isis.applib.annotation.DomainObject;
 import org.apache.isis.applib.annotation.Publishing;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.object.publishedobject.PublishedObjectFacet;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservice/DomainServiceMenuOrder.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservice/DomainServiceMenuOrder.java
index 161c13c..89735d0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservice/DomainServiceMenuOrder.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservice/DomainServiceMenuOrder.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.metamodel.facets.object.domainservice;
 import org.apache.isis.applib.annotation.Constants;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.internal.compare._Comparators;
+import org.apache.isis.commons.internal.compare._Comparators;
 
 public class DomainServiceMenuOrder {
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java
index b65c031..aee00c1 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/ignore/javalang/RemoveMethodsFacetFactory.java
@@ -25,7 +25,7 @@ import java.util.List;
 
 import com.google.common.collect.Lists;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.core.commons.lang.ClassExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/membergroups/annotprop/MemberGroupLayoutFacetProperties.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/membergroups/annotprop/MemberGroupLayoutFacetProperties.java
index 3aa838d..0c23178 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/membergroups/annotprop/MemberGroupLayoutFacetProperties.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/membergroups/annotprop/MemberGroupLayoutFacetProperties.java
@@ -24,7 +24,7 @@ import java.util.Properties;
 import java.util.stream.Collectors;
 
 import org.apache.isis.applib.annotation.MemberGroupLayout.ColumnSpans;
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacetAbstract;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/navparent/annotation/NavigableParentAnnotationFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/navparent/annotation/NavigableParentAnnotationFacetFactory.java
index 76f9a12..dafc8ee 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/navparent/annotation/NavigableParentAnnotationFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/navparent/annotation/NavigableParentAnnotationFacetFactory.java
@@ -23,7 +23,7 @@ import java.lang.reflect.Method;
 import java.util.List;
 
 import org.apache.isis.applib.annotation.PropertyLayout;
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java
index b90428b..c4660d8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java
@@ -23,9 +23,9 @@ import java.util.List;
 import java.util.Set;
 import java.util.UUID;
 
-import org.apache.isis.applib.internal.memento._Mementos;
-import org.apache.isis.applib.internal.memento._Mementos.SerializingAdapter;
 import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
+import org.apache.isis.commons.internal.memento._Mementos;
+import org.apache.isis.commons.internal.memento._Mementos.SerializingAdapter;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.oid.Oid;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethod.java
index 40dcbb3..1cf04f8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethod.java
@@ -23,8 +23,8 @@ import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/enums/ActionParameterChoicesFacetDerivedFromChoicesFacet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/enums/ActionParameterChoicesFacetDerivedFromChoicesFacet.java
index 1c899f5..67a6245 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/enums/ActionParameterChoicesFacetDerivedFromChoicesFacet.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/enums/ActionParameterChoicesFacetDerivedFromChoicesFacet.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.metamodel.facets.param.choices.enums;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethod.java
index c33a6ad..bb3cf82 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethod.java
@@ -23,7 +23,7 @@ import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
index 4222df7..e556973 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.metamodel.facets.param.choices.method;
 import java.lang.reflect.Method;
 import java.util.Collection;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethod.java
index 856550d..b528058 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethod.java
@@ -23,8 +23,8 @@ import java.lang.reflect.Method;
 import java.util.Collections;
 import java.util.List;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetInvertedByNullableAnnotationOnParameter.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetInvertedByNullableAnnotationOnParameter.java
index dc78bff..511255b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetInvertedByNullableAnnotationOnParameter.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetInvertedByNullableAnnotationOnParameter.java
@@ -23,7 +23,7 @@ import java.util.List;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.FacetedMethodParameter;
 import org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java
index 2a5a582..6e054ca 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java
@@ -26,7 +26,7 @@ import java.util.List;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Lists;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/choices/enums/PropertyChoicesFacetDerivedFromChoicesFacet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/choices/enums/PropertyChoicesFacetDerivedFromChoicesFacet.java
index 67c4ef7..eedbb47 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/choices/enums/PropertyChoicesFacetDerivedFromChoicesFacet.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/choices/enums/PropertyChoicesFacetDerivedFromChoicesFacet.java
@@ -19,7 +19,7 @@
 
 package org.apache.isis.core.metamodel.facets.properties.choices.enums;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java
index 41cd71a..091d7e7 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java
@@ -33,7 +33,7 @@ import java.util.TimeZone;
 import com.google.common.collect.Maps;
 
 import org.apache.isis.applib.adapters.EncodingException;
-import org.apache.isis.applib.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.core.commons.config.ConfigurationConstants;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.facetapi.Facet;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/timestampsql/JavaSqlTimeStampValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/timestampsql/JavaSqlTimeStampValueSemanticsProvider.java
index 1e3cfb8..8d7007c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/timestampsql/JavaSqlTimeStampValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/timestampsql/JavaSqlTimeStampValueSemanticsProvider.java
@@ -26,7 +26,7 @@ import java.util.Map;
 
 import org.apache.isis.applib.adapters.EncoderDecoder;
 import org.apache.isis.applib.adapters.Parser;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.object.parseable.InvalidEntryException;
 import org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java
index fcd12f7..9d70b8e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java
@@ -22,13 +22,13 @@ package org.apache.isis.core.metamodel.facets.value.treenode;
 import org.apache.isis.applib.adapters.DefaultsProvider;
 import org.apache.isis.applib.adapters.EncoderDecoder;
 import org.apache.isis.applib.adapters.Parser;
-import org.apache.isis.applib.internal.memento._Mementos;
-import org.apache.isis.applib.internal.memento._Mementos.Memento;
-import org.apache.isis.applib.internal.memento._Mementos.SerializingAdapter;
 import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
 import org.apache.isis.applib.tree.LazyTreeNode;
 import org.apache.isis.applib.tree.TreeNode;
 import org.apache.isis.applib.tree.TreeState;
+import org.apache.isis.commons.internal.memento._Mementos;
+import org.apache.isis.commons.internal.memento._Mementos.Memento;
+import org.apache.isis.commons.internal.memento._Mementos.SerializingAdapter;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderFacetComparator.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderFacetComparator.java
index 4eefcf7..ad89ec0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderFacetComparator.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/memberorderfacet/MemberOrderFacetComparator.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.metamodel.layout.memberorderfacet;
 
 import java.util.Comparator;
 
-import org.apache.isis.applib.internal.compare._Comparators;
+import org.apache.isis.commons.internal.compare._Comparators;
 import org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet;
 
 public class MemberOrderFacetComparator implements Comparator<MemberOrderFacet> {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelPlugin.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelPlugin.java
index 2ea8a81..66f83ce 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelPlugin.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodel/ProgrammingModelPlugin.java
@@ -22,8 +22,8 @@ import java.util.Collections;
 import java.util.Objects;
 import java.util.Set;
 
-import org.apache.isis.applib.internal.collections._Multimaps;
-import org.apache.isis.applib.internal.collections._Multimaps.SetMultimap;
+import org.apache.isis.commons.internal.collections._Multimaps;
+import org.apache.isis.commons.internal.collections._Multimaps.SetMultimap;
 import org.apache.isis.core.metamodel.facets.FacetFactory;
 
 public interface ProgrammingModelPlugin {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServicesInjector.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServicesInjector.java
index fb372e0..ea21cb7 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServicesInjector.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/ServicesInjector.java
@@ -27,13 +27,13 @@ import java.util.function.Predicate;
 import java.util.stream.Collectors;
 
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Collections;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.collections._Multimaps;
-import org.apache.isis.applib.internal.collections._Multimaps.ListMultimap;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizer;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Collections;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Multimaps;
+import org.apache.isis.commons.internal.collections._Multimaps.ListMultimap;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.commons.components.ApplicationScopedComponent;
 import org.apache.isis.core.commons.config.IsisConfiguration;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java
index 14c4edc..d388502 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java
@@ -30,16 +30,16 @@ import javax.inject.Inject;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Sets;
-import org.apache.isis.applib.internal.memento._Mementos.SerializingAdapter;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkHolder;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.applib.tree.TreeState;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Sets;
+import org.apache.isis.commons.internal.memento._Mementos.SerializingAdapter;
 import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
 import org.apache.isis.core.runtime.persistence.ObjectNotFoundException;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/config/ConfigurationServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/config/ConfigurationServiceDefault.java
index bf21966..3c2b894 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/config/ConfigurationServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/config/ConfigurationServiceDefault.java
@@ -31,11 +31,11 @@ import javax.annotation.PostConstruct;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.collections._Sets;
 import org.apache.isis.applib.services.config.ConfigurationProperty;
 import org.apache.isis.applib.services.config.ConfigurationService;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Sets;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
 import org.apache.isis.core.metamodel.services.configinternal.ConfigurationServiceInternal;
 import org.slf4j.Logger;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/factory/FactoryServiceInternalDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/factory/FactoryServiceInternalDefault.java
index 6cb9502..2dc46c1 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/factory/FactoryServiceInternalDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/factory/FactoryServiceInternalDefault.java
@@ -26,9 +26,9 @@ import org.apache.isis.applib.NonRecoverableException;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._Casts;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
+import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.facets.object.mixin.MixinFacet;
 import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
index 72a6363..c35482c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
@@ -38,12 +38,12 @@ import org.slf4j.LoggerFactory;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal._Constants;
 import org.apache.isis.applib.layout.grid.Grid;
 import org.apache.isis.applib.services.grid.GridLoaderService;
 import org.apache.isis.applib.services.grid.GridSystemService;
 import org.apache.isis.applib.services.jaxb.JaxbService;
 import org.apache.isis.applib.services.message.MessageService;
+import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategoryProvider;
 
 @DomainService(
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceInternalDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceInternalDefault.java
index fe536d0..6e0d1d5 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceInternalDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/repository/RepositoryServiceInternalDefault.java
@@ -33,13 +33,13 @@ import org.apache.isis.applib.RepositoryException;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.query.QueryFindAllInstances;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.applib.services.xactn.TransactionService;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/SwaggerServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/SwaggerServiceDefault.java
index e0b4f9d..40e0280 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/SwaggerServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/SwaggerServiceDefault.java
@@ -25,9 +25,9 @@ import javax.annotation.PostConstruct;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.resources._Resource;
 import org.apache.isis.applib.services.swagger.SwaggerService;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.resources._Resource;
 import org.apache.isis.core.metamodel.services.swagger.internal.SwaggerSpecGenerator;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
 import org.slf4j.Logger;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyFactory.java
index f260eed..9a2758c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyFactory.java
@@ -29,7 +29,7 @@ import java.util.function.Supplier;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 import org.apache.isis.core.metamodel.services.swagger.internal.ValuePropertyPlugin.ValuePropertyCollector;
 import org.joda.time.DateTime;
 import org.joda.time.LocalDate;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyPlugin.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyPlugin.java
index b55cb6b..ed83f01 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyPlugin.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/swagger/internal/ValuePropertyPlugin.java
@@ -4,7 +4,7 @@ import java.util.Map;
 import java.util.Objects;
 import java.util.function.BiConsumer;
 
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.core.metamodel.services.swagger.internal.ValuePropertyFactory.Factory;
 
 public interface ValuePropertyPlugin {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java
index 3a33503..c4d16a4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java
@@ -34,10 +34,10 @@ import org.apache.isis.applib.annotation.InvokeOn;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.value.Blob;
 import org.apache.isis.applib.value.Clob;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.consent.Consent;
 import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/CollectionUtils.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/CollectionUtils.java
index ce23a27..8d64382 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/CollectionUtils.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/CollectionUtils.java
@@ -23,8 +23,8 @@ import java.lang.reflect.Type;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.collections._Arrays;
-import org.apache.isis.applib.internal.collections._Collections;
+import org.apache.isis.commons.internal.collections._Arrays;
+import org.apache.isis.commons.internal.collections._Collections;
 
 /**
  * Defines the types which are considered to be collections.
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionDefault.java
index e0bf780..48827cc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionDefault.java
@@ -34,11 +34,11 @@ import org.apache.isis.applib.RecoverableException;
 import org.apache.isis.applib.annotation.InvokedOn;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.collections._Lists;
 
 import com.google.common.base.Predicate;
 import org.apache.isis.applib.services.command.Command;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.exceptions.UnknownTypeException;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.consent.Consent;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java
index f04c362..f46e8f1 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java
@@ -24,8 +24,8 @@ import java.util.List;
 import java.util.stream.Collectors;
 
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.services.command.Command;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.commons.exceptions.IsisException;
 import org.apache.isis.core.commons.util.ToString;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/DeweyOrderComparator.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/DeweyOrderComparator.java
index 92a8520..f037b24 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/DeweyOrderComparator.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/util/DeweyOrderComparator.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.metamodel.util;
 
 import java.util.Comparator;
 
-import org.apache.isis.applib.internal.compare._Comparators;
+import org.apache.isis.commons.internal.compare._Comparators;
 
 public class DeweyOrderComparator implements Comparator<String> {
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/runtime/threadpool/ThreadPoolSupport.java b/core/metamodel/src/main/java/org/apache/isis/core/runtime/threadpool/ThreadPoolSupport.java
index 0454e72..03467c2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/runtime/threadpool/ThreadPoolSupport.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/runtime/threadpool/ThreadPoolSupport.java
@@ -29,8 +29,8 @@ import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.ThreadPoolExecutor;
 import java.util.concurrent.TimeUnit;
 
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.context._Context;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/ProgrammingModelFacetsJava5.java b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/ProgrammingModelFacetsJava5.java
index 6456948..72f815e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/ProgrammingModelFacetsJava5.java
+++ b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/ProgrammingModelFacetsJava5.java
@@ -20,7 +20,7 @@ package org.apache.isis.progmodels.dflt;
 import java.util.List;
 import java.util.Set;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.facets.actions.action.ActionAnnotationFacetFactory;
 import org.apache.isis.core.metamodel.facets.actions.action.ActionChoicesForCollectionParameterFacetFactory;
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Utils.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Utils.java
index 8144527..4db96c3 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Utils.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Utils.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.metamodel.facets;
 import java.lang.reflect.Method;
 import java.util.List;
 
-import org.apache.isis.applib.internal._Constants;
+import org.apache.isis.commons.internal._Constants;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 
 class Utils {
diff --git a/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java b/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
index e8e80c6..dbe3da7 100644
--- a/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
+++ b/core/plugins/codegen-bytebuddy/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingByteBuddy.java
@@ -3,7 +3,7 @@ package org.apache.isis.core.plugins.codegen;
 import java.lang.reflect.Method;
 import java.util.function.Predicate;
 
-import org.apache.isis.applib.internal.exceptions._Exceptions;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.plugins.codegen.ProxyFactory;
 import org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin;
 
diff --git a/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingJavassist.java b/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
index 8e20ed5..5132a66 100644
--- a/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
+++ b/core/plugins/codegen-javassist/src/main/java/org/apache/isis/core/plugins/codegen/ProxyFactoryPluginUsingJavassist.java
@@ -7,9 +7,9 @@ import java.util.function.Predicate;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.commons.exceptions.IsisException;
 import org.apache.isis.core.plugins.codegen.ProxyFactory;
 import org.apache.isis.core.plugins.codegen.ProxyFactoryPlugin;
diff --git a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
index 2703723..26effdd 100644
--- a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
+++ b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ClassDiscoveryPluginUsingReflections.java
@@ -2,7 +2,7 @@ package org.apache.isis.core.plugins.classdiscovery.reflections;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 import org.apache.isis.core.plugins.classdiscovery.ClassDiscoveryPlugin;
 import org.reflections.scanners.SubTypesScanner;
diff --git a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectDiscovery.java b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectDiscovery.java
index 2337570..a5c18f6 100644
--- a/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectDiscovery.java
+++ b/core/plugins/discovery-reflections/src/main/java/org/apache/isis/core/plugins/classdiscovery/reflections/ReflectDiscovery.java
@@ -10,7 +10,7 @@ import java.util.stream.Stream;
 
 import javax.validation.constraints.NotNull;
 
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 import org.reflections.Reflections;
 
diff --git a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java
index f385ec8..f353410 100644
--- a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java
+++ b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java
@@ -40,14 +40,14 @@ import javax.jdo.identity.SingleFieldIdentity;
 import javax.jdo.listener.InstanceLifecycleListener;
 
 import org.apache.isis.applib.events.lifecycle.AbstractLifecycleEvent;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.command.Command;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizer;
 import org.apache.isis.applib.services.iactn.Interaction;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.ensure.Assert;
 import org.apache.isis.core.commons.ensure.IsisAssertException;
diff --git a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java
index fcfb0d8..a1b5feb 100644
--- a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java
+++ b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java
@@ -33,7 +33,7 @@ import javax.jdo.identity.LongIdentity;
 import javax.jdo.identity.ObjectIdentity;
 import javax.jdo.identity.StringIdentity;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.metamodel.adapter.oid.RootOid;
 import org.apache.isis.core.metamodel.spec.ObjectSpecId;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
diff --git a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java
index 56c525e..91c99ca 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java
+++ b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java
@@ -40,15 +40,15 @@ import javax.jdo.identity.SingleFieldIdentity;
 import javax.jdo.listener.InstanceLifecycleListener;
 
 import org.apache.isis.applib.events.lifecycle.AbstractLifecycleEvent;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
-import org.apache.isis.applib.internal.exceptions._Exceptions;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.command.Command;
 import org.apache.isis.applib.services.exceprecog.ExceptionRecognizer;
 import org.apache.isis.applib.services.iactn.Interaction;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.ensure.Assert;
 import org.apache.isis.core.commons.ensure.IsisAssertException;
diff --git a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java
index b4e709f..29c19d1 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java
+++ b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/JdoObjectIdSerializer.java
@@ -33,7 +33,7 @@ import javax.jdo.identity.LongIdentity;
 import javax.jdo.identity.ObjectIdentity;
 import javax.jdo.identity.StringIdentity;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.metamodel.adapter.oid.RootOid;
 import org.apache.isis.core.metamodel.spec.ObjectSpecId;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/metamodel/IsisJdoRuntimePlugin.java b/core/runtime/src/main/java/org/apache/isis/core/metamodel/IsisJdoRuntimePlugin.java
index d59776f..c6041b0 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/metamodel/IsisJdoRuntimePlugin.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/metamodel/IsisJdoRuntimePlugin.java
@@ -1,6 +1,6 @@
 package org.apache.isis.core.metamodel;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 import org.apache.isis.core.metamodel.services.configinternal.ConfigurationServiceInternal;
 import org.apache.isis.core.runtime.system.persistence.PersistenceSessionFactory;
 
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/memento/Memento.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/memento/Memento.java
index bf65edb..b91ab0c 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/memento/Memento.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/memento/Memento.java
@@ -22,7 +22,7 @@ package org.apache.isis.core.runtime.memento;
 import java.io.Serializable;
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.ensure.Assert;
 import org.apache.isis.core.commons.exceptions.IsisException;
 import org.apache.isis.core.commons.exceptions.UnknownTypeException;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
index a43a71f..16ea447 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
@@ -28,7 +28,7 @@ import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
 import javax.enterprise.context.RequestScoped;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.factory.InstanceCreationClassException;
 import org.apache.isis.core.commons.factory.InstanceCreationException;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java
index 2713d4a..e14eb19 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServicesInstallerFromAnnotation.java
@@ -33,7 +33,7 @@ import javax.annotation.PreDestroy;
 import org.apache.isis.applib.AppManifest;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.DomainServiceLayout;
-import org.apache.isis.applib.internal.discover._Discover;
+import org.apache.isis.commons.internal.discover._Discover;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
 import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceMenuOrder;
 import org.apache.isis.core.metamodel.util.DeweyOrderComparator;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
index e9aa480..d3010fe 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
@@ -28,14 +28,14 @@ import javax.annotation.PreDestroy;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.base._Casts;
 import org.apache.isis.applib.services.background.BackgroundCommandService;
 import org.apache.isis.applib.services.background.BackgroundCommandService2;
 import org.apache.isis.applib.services.background.BackgroundService2;
 import org.apache.isis.applib.services.command.Command;
 import org.apache.isis.applib.services.command.CommandContext;
 import org.apache.isis.applib.services.factory.FactoryService;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.core.commons.lang.ArrayExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java
index 3e4bf99..3c8ebb8 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.runtime.system.context;
 
 import java.util.Optional;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.services.ServicesInjector;
 import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionBase.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionBase.java
index 3de3097..d10abe5 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionBase.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionBase.java
@@ -6,8 +6,6 @@ import java.util.Map;
 import javax.jdo.PersistenceManager;
 import javax.jdo.PersistenceManagerFactory;
 
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
 import org.apache.isis.applib.services.clock.ClockService;
 import org.apache.isis.applib.services.command.CommandContext;
 import org.apache.isis.applib.services.command.spi.CommandService;
@@ -16,6 +14,8 @@ import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.iactn.InteractionContext;
 import org.apache.isis.applib.services.metrics.MetricsService;
 import org.apache.isis.applib.services.user.UserService;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.util.ToString;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionFactoryBuilder.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionFactoryBuilder.java
index 2663f3a..21daeb0 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionFactoryBuilder.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionFactoryBuilder.java
@@ -30,8 +30,8 @@ import org.apache.isis.applib.AppManifest;
 import org.apache.isis.applib.clock.Clock;
 import org.apache.isis.applib.fixtures.FixtureClock;
 import org.apache.isis.applib.fixturescripts.FixtureScripts;
-import org.apache.isis.applib.internal.context._Context;
 import org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
 import org.apache.isis.core.commons.lang.ListExtensions;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java
index 278c64f..84a86c9 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/IsisComponentProvider.java
@@ -32,7 +32,7 @@ import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.Mixin;
 import org.apache.isis.applib.annotation.Nature;
 import org.apache.isis.applib.fixturescripts.FixtureScript;
-import org.apache.isis.applib.internal.discover._Discover;
+import org.apache.isis.commons.internal.discover._Discover;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
 import org.apache.isis.core.commons.factory.InstanceUtil;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java
index 8f4f92d..2559cb9 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/systemusinginstallers/PersistenceCapableTypeFinder.java
@@ -25,7 +25,7 @@ import java.util.Set;
 
 import javax.jdo.annotations.PersistenceCapable;
 
-import org.apache.isis.applib.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.core.plugins.classdiscovery.ClassDiscovery;
 
 /**
diff --git a/core/specsupport/src/main/java/org/apache/isis/core/specsupport/scenarios/ScenarioExecutionScope.java b/core/specsupport/src/main/java/org/apache/isis/core/specsupport/scenarios/ScenarioExecutionScope.java
index 42a3e54..4f499a3 100644
--- a/core/specsupport/src/main/java/org/apache/isis/core/specsupport/scenarios/ScenarioExecutionScope.java
+++ b/core/specsupport/src/main/java/org/apache/isis/core/specsupport/scenarios/ScenarioExecutionScope.java
@@ -16,7 +16,7 @@
  */
 package org.apache.isis.core.specsupport.scenarios;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 
 /**
  * The scope at which the specification will run; acts as a factory to create
diff --git a/core/specsupport/src/main/java/org/apache/isis/core/specsupport/specs/CukeGlueAbstract.java b/core/specsupport/src/main/java/org/apache/isis/core/specsupport/specs/CukeGlueAbstract.java
index 8087f43..71ba7e7 100644
--- a/core/specsupport/src/main/java/org/apache/isis/core/specsupport/specs/CukeGlueAbstract.java
+++ b/core/specsupport/src/main/java/org/apache/isis/core/specsupport/specs/CukeGlueAbstract.java
@@ -24,8 +24,8 @@ import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.util.List;
 
-import org.apache.isis.applib.internal.base._Strings;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
+import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.core.specsupport.scenarios.ScenarioExecution;
 import org.apache.isis.core.specsupport.scenarios.ScenarioExecutionForUnit;
 import org.apache.isis.core.specsupport.scenarios.ScenarioExecutionScope;
diff --git a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/JsonRepresentation.java b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/JsonRepresentation.java
index 6e5f462..10b4bff 100644
--- a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/JsonRepresentation.java
+++ b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/JsonRepresentation.java
@@ -36,9 +36,9 @@ import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.viewer.restfulobjects.applib.util.JsonNodeUtils;
 import org.apache.isis.viewer.restfulobjects.applib.util.PathNode;
 import org.apache.isis.viewer.restfulobjects.applib.util.UrlEncodingUtils;
diff --git a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/RestfulResponse.java b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/RestfulResponse.java
index 2429668..01c2b5e 100644
--- a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/RestfulResponse.java
+++ b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/RestfulResponse.java
@@ -32,7 +32,7 @@ import javax.ws.rs.core.Response.Status;
 import javax.ws.rs.core.Response.Status.Family;
 import javax.ws.rs.core.Response.StatusType;
 
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.viewer.restfulobjects.applib.JsonRepresentation;
 import org.apache.isis.viewer.restfulobjects.applib.RepresentationType;
 import org.apache.isis.viewer.restfulobjects.applib.util.JsonMapper;
diff --git a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/UriBuilderPlugin.java b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/UriBuilderPlugin.java
index 76e86d9..2bc774b 100644
--- a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/UriBuilderPlugin.java
+++ b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/client/UriBuilderPlugin.java
@@ -2,7 +2,7 @@ package org.apache.isis.viewer.restfulobjects.applib.client;
 
 import javax.ws.rs.core.UriBuilder;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 
 public interface UriBuilderPlugin {
 
diff --git a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/MediaTypes.java b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/MediaTypes.java
index 7716113..442b917 100644
--- a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/MediaTypes.java
+++ b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/MediaTypes.java
@@ -24,7 +24,7 @@ import java.util.stream.Collectors;
 
 import javax.ws.rs.core.MediaType;
 
-import org.apache.isis.applib.internal.base._Strings;
+import org.apache.isis.commons.internal.base._Strings;
 
 public class MediaTypes {
 
diff --git a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/Parser.java b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/Parser.java
index 98bacfa..3bc96d9 100644
--- a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/Parser.java
+++ b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/Parser.java
@@ -29,10 +29,10 @@ import java.util.stream.Collectors;
 import javax.ws.rs.core.CacheControl;
 import javax.ws.rs.core.MediaType;
 
-import org.apache.isis.applib.internal._Constants;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal._Constants;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.viewer.restfulobjects.applib.JsonRepresentation;
 
 import com.google.common.base.Function;
diff --git a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/PathNode.java b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/PathNode.java
index 245e7f9..cf3b49a 100644
--- a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/PathNode.java
+++ b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/PathNode.java
@@ -26,9 +26,9 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.base._Strings;
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.commons.internal.base._Strings;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.viewer.restfulobjects.applib.JsonRepresentation;
 
 import com.google.common.base.Splitter;
diff --git a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/UrlEncodingUtils.java b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/UrlEncodingUtils.java
index e74f660..8b1a4c8 100644
--- a/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/UrlEncodingUtils.java
+++ b/core/viewer-restfulobjects-applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/util/UrlEncodingUtils.java
@@ -28,8 +28,8 @@ import java.util.function.Function;
 
 import com.fasterxml.jackson.databind.JsonNode;
 
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.viewer.restfulobjects.applib.JsonRepresentation;
 
 public final class UrlEncodingUtils {
diff --git a/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/IsisJaxrsServerPlugin.java b/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/IsisJaxrsServerPlugin.java
index a6d3a75..ea88453 100644
--- a/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/IsisJaxrsServerPlugin.java
+++ b/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/IsisJaxrsServerPlugin.java
@@ -1,6 +1,6 @@
 package org.apache.isis.viewer.restfulobjects.server;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 import org.apache.isis.viewer.restfulobjects.applib.client.RestfulResponse.HttpStatusCode;
 
 public interface IsisJaxrsServerPlugin {
diff --git a/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/RestfulObjectsApplication.java b/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/RestfulObjectsApplication.java
index 3f5864a..01180eb 100644
--- a/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/RestfulObjectsApplication.java
+++ b/core/viewer-restfulobjects-server/src/main/java/org/apache/isis/viewer/restfulobjects/server/RestfulObjectsApplication.java
@@ -18,7 +18,7 @@
  */
 package org.apache.isis.viewer.restfulobjects.server;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.viewer.restfulobjects.rendering.service.acceptheader.AcceptHeaderServiceForRest;
 import org.apache.isis.viewer.restfulobjects.server.mappers.ExceptionMapperForObjectNotFound;
 import org.apache.isis.viewer.restfulobjects.server.mappers.ExceptionMapperForRestfulObjectsApplication;
diff --git a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 17719fa..b60ee44 100644
--- a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -31,9 +31,9 @@ import java.util.concurrent.Callable;
 import java.util.concurrent.Executors;
 import java.util.concurrent.Future;
 
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.context._Context;
-import org.apache.isis.applib.internal.resources._Resource;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.context._Context;
+import org.apache.isis.commons.internal.resources._Resource;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.commons.config.IsisConfigurationDefault;
diff --git a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java
index 52c2c44..7816777 100644
--- a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java
+++ b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/registries/components/ComponentFactoryRegistrarDefault.java
@@ -21,7 +21,7 @@ package org.apache.isis.viewer.wicket.viewer.registries.components;
 
 import java.util.ServiceLoader;
 
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.context._Plugin;
 import org.apache.isis.viewer.wicket.ui.ComponentFactory;
 import org.apache.isis.viewer.wicket.ui.app.registry.ComponentFactoryRegistrar;
 import org.apache.isis.viewer.wicket.ui.components.about.AboutPanelFactory;
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java
index d6dc59d..253c463 100644
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java
@@ -27,9 +27,9 @@ import java.util.function.Function;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.hint.HintStore;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java
index a11cc3e..7b08cd2 100644
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ActionModel.java
@@ -32,12 +32,12 @@ import org.apache.isis.applib.Identifier;
 import org.apache.isis.applib.annotation.BookmarkPolicy;
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.services.routing.RoutingService;
 import org.apache.isis.applib.value.Blob;
 import org.apache.isis.applib.value.Clob;
 import org.apache.isis.applib.value.LocalResourcePath;
 import org.apache.isis.applib.value.NamedWithMimeType;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
 import org.apache.isis.core.metamodel.adapter.oid.OidMarshaller;
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
index b09ceaf..b15b781 100644
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
@@ -28,10 +28,10 @@ import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.layout.component.CollectionLayoutData;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.factory.InstanceUtil;
 import org.apache.isis.core.commons.lang.ClassUtil;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
index b92f239..bfd7fd1 100644
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/ScalarModel.java
@@ -28,7 +28,7 @@ import java.util.stream.Collectors;
 
 import org.apache.isis.applib.annotation.PromptStyle;
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/Util.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/Util.java
index 52de9fc..6f478e8 100644
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/Util.java
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/Util.java
@@ -21,7 +21,7 @@ package org.apache.isis.viewer.wicket.model.models;
 
 import java.util.Optional;
 
-import org.apache.isis.applib.internal.base._Reduction;
+import org.apache.isis.commons.internal.base._Reduction;
 
 class Util {
 
diff --git a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/WicketComponentUtils.java b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/WicketComponentUtils.java
index d0d7953..1d06eea 100644
--- a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/WicketComponentUtils.java
+++ b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/WicketComponentUtils.java
@@ -16,7 +16,7 @@
  */
 package org.apache.isis.viewer.wicket.model.models;
 
-import org.apache.isis.applib.internal.base._Casts;
+import org.apache.isis.commons.internal.base._Casts;
 import org.apache.wicket.Component;
 import org.apache.wicket.Page;
 import org.apache.wicket.markup.renderStrategy.DeepChildFirstVisitor;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
index c2187d0..88e8bb3 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/about/JarManifestModel.java
@@ -35,7 +35,7 @@ import com.google.common.base.CharMatcher;
 import com.google.common.base.Splitter;
 import com.google.common.collect.Lists;
 
-import org.apache.isis.applib.internal.context._Context;
+import org.apache.isis.commons.internal.context._Context;
 import org.apache.isis.core.commons.lang.CloseableExtensions;
 import org.apache.isis.viewer.wicket.model.models.ModelAbstract;
 
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/bulk/BulkActionsLinkFactory.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/bulk/BulkActionsLinkFactory.java
index f990a83..a78c361 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/bulk/BulkActionsLinkFactory.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collection/bulk/BulkActionsLinkFactory.java
@@ -23,13 +23,13 @@ import java.util.stream.Collectors;
 
 import org.apache.isis.applib.RecoverableException;
 import org.apache.isis.applib.annotation.InvokedOn;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.collections._Lists;
 import org.apache.isis.applib.services.actinvoc.ActionInvocationContext;
 import org.apache.isis.applib.services.command.Command;
 import org.apache.isis.applib.services.command.Command.Executor;
 import org.apache.isis.applib.services.command.CommandContext;
 import org.apache.isis.applib.services.xactn.TransactionService;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.MessageBroker;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/col/Col.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/col/Col.java
index 68e5b77..3dbb410 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/col/Col.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/col/Col.java
@@ -31,7 +31,6 @@ import com.google.common.collect.Lists;
 
 import org.apache.wicket.Component;
 import org.apache.wicket.markup.html.WebMarkupContainer;
-import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.layout.component.ActionLayoutData;
 import org.apache.isis.applib.layout.component.CollectionLayoutData;
 import org.apache.isis.applib.layout.component.DomainObjectLayoutData;
@@ -40,6 +39,7 @@ import org.apache.isis.applib.layout.grid.bootstrap3.BS3Col;
 import org.apache.isis.applib.layout.grid.bootstrap3.BS3Row;
 import org.apache.isis.applib.layout.grid.bootstrap3.BS3Tab;
 import org.apache.isis.applib.layout.grid.bootstrap3.BS3TabGroup;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
 import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/tabs/TabGroupPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/tabs/TabGroupPanel.java
index 013f188..37c0b52 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/tabs/TabGroupPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/layout/bs3/tabs/TabGroupPanel.java
@@ -21,10 +21,10 @@ package org.apache.isis.viewer.wicket.ui.components.layout.bs3.tabs;
 import java.util.List;
 import java.util.stream.Collectors;
 
-import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.layout.grid.bootstrap3.BS3Tab;
 import org.apache.isis.applib.layout.grid.bootstrap3.BS3TabGroup;
 import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.runtime.system.context.IsisContext;
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
 import org.apache.isis.viewer.wicket.model.util.ComponentHintKey;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/IsisConverterLocator.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/IsisConverterLocator.java
index bba843b..ff13c89 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/IsisConverterLocator.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/IsisConverterLocator.java
@@ -18,9 +18,9 @@
  */
 package org.apache.isis.viewer.wicket.ui.components.scalars;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.base._NullSafe;
-import org.apache.isis.applib.internal.context._Plugin;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.base._NullSafe;
+import org.apache.isis.commons.internal.context._Plugin;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.facets.objectvalue.renderedadjusted.RenderedAdjustedFacet;
 import org.apache.isis.core.metamodel.facets.value.bigdecimal.BigDecimalValueFacet;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java
index 8d82c0f..922e75e 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/reference/ReferencePanel.java
@@ -21,7 +21,7 @@ package org.apache.isis.viewer.wicket.ui.components.scalars.reference;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
 import org.apache.isis.core.metamodel.facets.object.autocomplete.AutoCompleteFacet;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java
index 73a2b5c..57d241e 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/valuechoices/ValueChoicesSelect2Panel.java
@@ -18,7 +18,7 @@ package org.apache.isis.viewer.wicket.ui.components.scalars.valuechoices;
 
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
 import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/tree/IsisToWicketTreeAdapter.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/tree/IsisToWicketTreeAdapter.java
index 7e7f8af..cdbb86b 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/tree/IsisToWicketTreeAdapter.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/tree/IsisToWicketTreeAdapter.java
@@ -12,13 +12,13 @@ import java.util.stream.Stream;
 
 import javax.resource.spi.IllegalStateException;
 
-import org.apache.isis.applib.internal.collections._Lists;
-import org.apache.isis.applib.internal.functions._Functions;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.tree.TreeAdapter;
 import org.apache.isis.applib.tree.TreeNode;
 import org.apache.isis.applib.tree.TreePath;
 import org.apache.isis.applib.tree.TreeState;
+import org.apache.isis.commons.internal.collections._Lists;
+import org.apache.isis.commons.internal.functions._Functions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.oid.RootOid;
 import org.apache.isis.core.runtime.system.context.IsisContext;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/Placement.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/Placement.java
index 8a5b977..e8de66f 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/Placement.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/navbar/Placement.java
@@ -18,7 +18,7 @@
  */
 package org.apache.isis.viewer.wicket.ui.components.widgets.navbar;
 
-import org.apache.isis.applib.internal.resources._Resource;
+import org.apache.isis.commons.internal.resources._Resource;
 
 public enum Placement {
     HEADER,
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceObjectAutoComplete.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceObjectAutoComplete.java
index e85d498..32d7384 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceObjectAutoComplete.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceObjectAutoComplete.java
@@ -39,7 +39,7 @@ package org.apache.isis.viewer.wicket.ui.components.widgets.select2.providers;
 import java.util.Collection;
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.oid.RootOid;
 import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceParamOrPropertyAutoComplete.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceParamOrPropertyAutoComplete.java
index 9307738..f79c454 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceParamOrPropertyAutoComplete.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/select2/providers/ObjectAdapterMementoProviderForReferenceParamOrPropertyAutoComplete.java
@@ -39,7 +39,7 @@ package org.apache.isis.viewer.wicket.ui.components.widgets.select2.providers;
 import java.util.Collection;
 import java.util.List;
 
-import org.apache.isis.applib.internal.collections._Lists;
+import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.oid.RootOid;
 import org.apache.isis.viewer.wicket.model.isis.WicketViewerSettings;
diff --git a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
index dbea032..a662ccd 100644
--- a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
+++ b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
@@ -27,7 +27,6 @@ import java.util.Map;
 import java.util.Set;
 
 import org.apache.isis.applib.annotation.Where;
-import org.apache.isis.applib.internal.base._NullSafe;
 import org.apache.isis.applib.services.wrapper.DisabledException;
 import org.apache.isis.applib.services.wrapper.HiddenException;
 import org.apache.isis.applib.services.wrapper.InteractionException;
@@ -41,6 +40,7 @@ import org.apache.isis.applib.services.wrapper.events.PropertyAccessEvent;
 import org.apache.isis.applib.services.wrapper.events.UsabilityEvent;
 import org.apache.isis.applib.services.wrapper.events.ValidityEvent;
 import org.apache.isis.applib.services.wrapper.events.VisibilityEvent;
+import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.IsisJdoMetamodelPlugin;
diff --git a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java
index 6b2a64d..d408fc8 100644
--- a/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java
+++ b/core/wrapper/src/main/java/org/apache/isis/core/wrapper/proxy/ProxyCreator.java
@@ -23,9 +23,9 @@ import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.Proxy;
 import java.util.Map;
 
-import org.apache.isis.applib.internal.base._Casts;
-import org.apache.isis.applib.internal.collections._Arrays;
 import org.apache.isis.applib.services.wrapper.WrappingObject;
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.collections._Arrays;
 import org.apache.isis.core.commons.lang.ArrayExtensions;
 import org.apache.isis.core.metamodel.specloader.classsubstitutor.ProxyEnhanced;
 import org.apache.isis.core.plugins.codegen.ProxyFactory;

-- 
To stop receiving notification emails like this one, please contact
ahuber@apache.org.

[isis] 04/05: ISIS-1949: deprecating JavassistImposteriser ...

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 4d2a40483d6893df17fe2826fba332b8648fd1f9
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat May 19 19:08:38 2018 +0200

    ISIS-1949: deprecating JavassistImposteriser ...
    
    ... use ImposteriserUsingCodegenPlugin instead
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1949
---
 ...er.java => ImposteriserUsingCodegenPlugin.java} | 75 +++++-----------------
 .../jmocking/JavassistImposteriser.java            |  5 ++
 2 files changed, 20 insertions(+), 60 deletions(-)

diff --git a/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/JavassistImposteriser.java b/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/ImposteriserUsingCodegenPlugin.java
similarity index 53%
copy from core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/JavassistImposteriser.java
copy to core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/ImposteriserUsingCodegenPlugin.java
index 5f3efdc..17b901f 100644
--- a/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/JavassistImposteriser.java
+++ b/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/ImposteriserUsingCodegenPlugin.java
@@ -16,29 +16,22 @@
  */
 package org.apache.isis.core.unittestsupport.jmocking;
 
-import javassist.util.proxy.MethodFilter;
-import javassist.util.proxy.MethodHandler;
-import javassist.util.proxy.ProxyFactory;
-import javassist.util.proxy.ProxyObject;
-
-import java.lang.reflect.Constructor;
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
+
+import org.apache.isis.core.plugins.codegen.ProxyFactory;
 import org.jmock.api.Imposteriser;
 import org.jmock.api.Invocation;
 import org.jmock.api.Invokable;
 import org.jmock.lib.JavaReflectionImposteriser;
-import org.objenesis.Objenesis;
-import org.objenesis.ObjenesisStd;
 
-public class JavassistImposteriser implements Imposteriser {
+public class ImposteriserUsingCodegenPlugin implements Imposteriser {
 
-    public static final Imposteriser INSTANCE = new JavassistImposteriser();
+    public static final Imposteriser INSTANCE = new ImposteriserUsingCodegenPlugin();
 
     private final Imposteriser reflectionImposteriser = new JavaReflectionImposteriser();
-    private final Objenesis objenesis = new ObjenesisStd();
 
-    private JavassistImposteriser() {
+    private ImposteriserUsingCodegenPlugin() {
     }
 
 
@@ -62,15 +55,16 @@ public class JavassistImposteriser implements Imposteriser {
             return reflectionImposteriser.imposterise(mockObject, mockedType, ancilliaryTypes);
         }
 
-        try {
-            setConstructorsAccessible(mockedType, true);
-
-            final Class<?> proxyClass = proxyClass(mockedType, ancilliaryTypes);
-            final Object proxy = proxy(proxyClass, mockObject);
-            return mockedType.cast(proxy);
-        } finally {
-            setConstructorsAccessible(mockedType, false);
-        }
+            
+        final ProxyFactory<T> factory = ProxyFactory.builder(mockedType)
+    	.interfaces(ancilliaryTypes)
+    	.build();
+
+        final boolean initialize = false;
+        
+        return factory.createInstance(
+        		(obj, method, args)->mockObject.invoke(new Invocation(obj, method, args)), 
+        		initialize);
     }
 
     // //////////////////////////////////////
@@ -88,44 +82,5 @@ public class JavassistImposteriser implements Imposteriser {
             throw new Error("no public toString method found", e);
         }
     }
-
-    private static void setConstructorsAccessible(Class<?> mockedType, boolean accessible) {
-        for (Constructor<?> constructor : mockedType.getDeclaredConstructors()) {
-            constructor.setAccessible(accessible);
-        }
-    }
-
-    private Class<?> proxyClass(Class<?> mockedType, Class<?>... ancilliaryTypes) {
-
-        final ProxyFactory proxyFactory = new ProxyFactory();
-        proxyFactory.setFilter(new MethodFilter() {
-            @Override
-            public boolean isHandled(final Method m) {
-                // ignore finalize() and also bridge methods
-                return !m.getName().equals("finalize") || m.isBridge(); //[ahuber] this code does not ignore bridges!
-            }
-        });
-
-        proxyFactory.setSuperclass(mockedType);
-        proxyFactory.setInterfaces(ancilliaryTypes);
-
-        return proxyFactory.createClass();
-    }
-
-
-    private Object proxy(Class<?> proxyClass, final Invokable mockObject) {
-
-        final ProxyObject proxyObject = (ProxyObject) objenesis.newInstance(proxyClass);
-        proxyObject.setHandler(new MethodHandler() {
-            @Override
-            public Object invoke(Object self, Method thisMethod, Method proceed, Object[] args) throws Throwable {
-                return mockObject.invoke(new Invocation(self, thisMethod, args));
-            }
-        });
-
-        return proxyObject;
-    }
-
-    
     
 }
diff --git a/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/JavassistImposteriser.java b/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/JavassistImposteriser.java
index 5f3efdc..3eaed36 100644
--- a/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/JavassistImposteriser.java
+++ b/core/unittestsupport/src/main/java/org/apache/isis/core/unittestsupport/jmocking/JavassistImposteriser.java
@@ -31,6 +31,11 @@ import org.jmock.lib.JavaReflectionImposteriser;
 import org.objenesis.Objenesis;
 import org.objenesis.ObjenesisStd;
 
+/**
+  * @deprecated with 2.0.0, use {@link ImposteriserUsingCodegenPlugin} instead
+  * 
+  */
+@Deprecated
 public class JavassistImposteriser implements Imposteriser {
 
     public static final Imposteriser INSTANCE = new JavassistImposteriser();

-- 
To stop receiving notification emails like this one, please contact
ahuber@apache.org.

[isis] 01/05: ISIS-1949: Introduces new core project: commons

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit c856eb0d19021d447a52f408116543d5bbaa718c
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sat May 19 18:15:47 2018 +0200

    ISIS-1949: Introduces new core project: commons
    
    to allow Applib and Unittestsupport to have a common utilities
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1949
---
 core/applib/pom.xml          |  5 ++++
 core/commons/.gitignore      |  1 +
 core/commons/pom.xml         | 70 ++++++++++++++++++++++++++++++++++++++++++++
 core/pom.xml                 |  7 +++++
 core/unittestsupport/pom.xml |  6 ++++
 5 files changed, 89 insertions(+)

diff --git a/core/applib/pom.xml b/core/applib/pom.xml
index 5463f9b..84481d7 100644
--- a/core/applib/pom.xml
+++ b/core/applib/pom.xml
@@ -99,6 +99,11 @@
             <groupId>org.apache.isis.core</groupId>
             <artifactId>isis-core-schema</artifactId>
         </dependency>
+        
+        <dependency>
+            <groupId>org.apache.isis.core</groupId>
+            <artifactId>isis-core-commons</artifactId>
+        </dependency>
 
 		<!-- JEE API -->
 		<dependency>
diff --git a/core/commons/.gitignore b/core/commons/.gitignore
new file mode 100644
index 0000000..a48e45b
--- /dev/null
+++ b/core/commons/.gitignore
@@ -0,0 +1 @@
+/target-ide
diff --git a/core/commons/pom.xml b/core/commons/pom.xml
new file mode 100644
index 0000000..12d1e38
--- /dev/null
+++ b/core/commons/pom.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.isis.core</groupId>
+        <artifactId>isis</artifactId>
+        <version>${revision}</version>
+    </parent>
+
+    <artifactId>isis-core-commons</artifactId>
+
+    <name>Apache Isis Commons</name>
+    <description>
+        Isis library, defining utilities required by both Applib and Unittestsupport.
+    </description>
+
+    <properties>
+        <jar-plugin.automaticModuleName>org.apache.isis.commons</jar-plugin.automaticModuleName>
+        <git-plugin.propertiesDir>org/apache/isis/commons</git-plugin.propertiesDir>
+    </properties>
+
+    <build>
+        <resources>
+            <resource>
+                <filtering>false</filtering>
+                <directory>src/main/resources</directory>
+            </resource>
+            <resource>
+                <filtering>false</filtering>
+                <directory>src/main/java</directory>
+                <includes>
+                    <include>**</include>
+                </includes>
+                <excludes>
+                    <exclude>**/*.java</exclude>
+                </excludes>
+            </resource>
+        </resources>
+    </build>
+
+    <dependencies>
+
+		<!-- provides @Nullable -->
+        <dependency>
+        	<groupId>com.google.code.findbugs</groupId>
+        	<artifactId>annotations</artifactId>
+        </dependency>
+        
+    </dependencies>
+
+</project>
diff --git a/core/pom.xml b/core/pom.xml
index cdafd95..5321152 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -1209,6 +1209,13 @@ ${license.additional-notes}
 <!-- 	            provided by plugins -->
 <!-- 	            <scope>provided</scope> -->
 <!--         	</dependency> -->
+
+            <!-- isis commons -->
+			<dependency>
+				<groupId>org.apache.isis.core</groupId>
+				<artifactId>isis-core-commons</artifactId>
+				<version>${revision}</version>
+			</dependency>
         
             <!-- unittestsupport -->
             <dependency>
diff --git a/core/unittestsupport/pom.xml b/core/unittestsupport/pom.xml
index f32abf5..fecf2db 100644
--- a/core/unittestsupport/pom.xml
+++ b/core/unittestsupport/pom.xml
@@ -34,6 +34,12 @@
 	</description>
 
 	<dependencies>
+	
+		<dependency>
+            <groupId>org.apache.isis.core</groupId>
+            <artifactId>isis-core-commons</artifactId>
+        </dependency>
+	
 		<dependency>
 			<groupId>junit</groupId>
 			<artifactId>junit</artifactId>

-- 
To stop receiving notification emails like this one, please contact
ahuber@apache.org.