You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2018/02/14 14:33:36 UTC

[isis] 03/06: Merge remote-tracking branch 'origin/ISIS-1846_internal_utils'

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

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

commit e989ad937057a074023042691a0b65df036740b1
Merge: c149771 8ebd313
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Wed Feb 14 13:59:38 2018 +0000

    Merge remote-tracking branch 'origin/ISIS-1846_internal_utils'
    
    # Conflicts:
    #	core/applib/src/main/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent.java
    #	core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
    #	core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java

 core/applib/pom.xml                                |  20 +-
 .../java/org/apache/isis/applib/AppManifest.java   | 120 +---------
 .../apache/isis/applib/AppManifestAbstract.java    |   3 +-
 .../org/apache/isis/applib/IsisApplibModule.java   |   5 +-
 .../org/apache/isis/applib/ModuleAbstract.java     |   4 +-
 .../fixturescripts/BuilderScriptAbstract.java      |   4 +-
 .../applib/fixturescripts/ExecutionParameters.java |   6 +-
 .../applib/fixturescripts/FixtureResultList.java   |   4 +-
 .../isis/applib/fixturescripts/FixtureScript.java  |  41 ++--
 .../isis/applib/fixturescripts/FixtureScripts.java |   3 +
 .../isis/applib/fixturescripts/StringUtil.java     |  79 -------
 .../Streams.java => internal/_Constants.java}      |  42 ++--
 .../apache/isis/applib/internal/base/_Casts.java}  |  34 +--
 .../isis/applib/internal/base/_NullSafe.java}      |  74 +++++--
 .../apache/isis/applib/internal/base/_Strings.java | 232 ++++++++++++++++++++
 .../internal/base/_Strings_NaturalNames.java       |  94 ++++++++
 .../internal/base/_Strings_SplitIterator.java      |  73 +++++++
 .../Casts.java => internal/base/package-info.java} |  21 +-
 .../applib/internal/compare/_Comparators.java}     |  52 +++--
 .../compare/_Comparators_SequenceCompare.java}     |  53 +++--
 .../applib/internal/compare/package-info.java}     |  20 +-
 .../isis/applib/internal/context/_Context.java     | 151 +++++++++++++
 .../applib/internal/context/package-info.java}     |  20 +-
 .../applib/internal/exceptions/_Exceptions.java    |  85 +++++++
 .../applib/internal/exceptions/package-info.java}  |  20 +-
 .../apache/isis/applib/internal/package-info.java} |  20 +-
 .../isis/applib/internal/reflection/_Reflect.java  |  83 +++++++
 .../internal/reflection/_Reflect_Discovery.java    |  85 +++++++
 .../internal/reflection/_Reflect_Manifest.java     | 147 +++++++++++++
 .../applib/internal/reflection/package-info.java}  |  20 +-
 .../layout/component/CollectionLayoutData.java     |   3 +-
 .../isis/applib/layout/component/FieldSet.java     |   2 +-
 .../applib/layout/grid/bootstrap3/BS3ClearFix.java |   1 +
 .../layout/grid/bootstrap3/BS3ElementAbstract.java |   1 +
 .../applib/layout/grid/bootstrap3/BS3Grid.java     |   2 +-
 .../isis/applib/layout/grid/bootstrap3/BS3Tab.java |   4 +-
 .../applib/layout/menubars/MenuBarsAbstract.java   |   1 +
 .../applib/layout/menubars/bootstrap3/BS3Menu.java |   5 -
 .../layout/menubars/bootstrap3/BS3MenuBars.java    |   5 +
 .../java/org/apache/isis/applib/query/Query.java   |   2 +-
 .../services/appfeat/ApplicationMemberType.java    |  15 +-
 .../isis/applib/services/bookmark/Bookmark.java    |   5 +-
 .../ClassDiscoveryServiceUsingReflections.java     |  35 +--
 .../isis/applib/services/dto/DtoMappingHelper.java |   6 +-
 .../services/eventbus/AbstractDomainEvent.java     |  15 ++
 .../exceprecog/ExceptionRecognizerAbstract.java    |  57 ++++-
 .../exceprecog/ExceptionRecognizerForType.java     |   1 +
 ...rType.java => ExceptionRecognizerForType2.java} |  63 +++---
 ...xceptionRecognizerForJDODataStoreException.java |   4 +-
 ...traintViolationForeignKeyNoActionException.java |  17 +-
 ...ionRecognizerForJDOObjectNotFoundException.java |   5 +-
 ...yConstraintViolationUniqueOrIndexException.java |  17 +-
 .../isis/applib/services/jaxb/JaxbService.java     |  10 +-
 .../queryresultscache/QueryResultsCache.java       |   4 +-
 .../services/repository/RepositoryService.java     |  26 ++-
 .../isis/applib/spec/AbstractSpecification2.java   |   4 +-
 .../java/org/apache/isis/applib/util/Enums.java    |  40 +---
 .../java/org/apache/isis/applib/util/JaxbUtil.java |   4 +-
 .../apache/isis/applib/util/ObjectContracts.java   |   6 +-
 .../org/apache/isis/applib/util/TitleBuffer.java   |   8 +-
 .../apache/isis/schema/utils/CommonDtoUtils.java   |  20 +-
 .../isis/schema/utils/InteractionDtoUtils.java     |  19 +-
 .../isis/schema/utils/MemberExecutionDtoUtils.java |   4 +-
 .../isis/applib/internal/base/NullSafeTest.java    | 116 ++++++++++
 .../isis/applib/internal/base/StringsTest.java     | 243 +++++++++++++++++++++
 .../applib/internal/compare/ComparatorsTest.java   | 158 ++++++++++++++
 ...t.java => ExceptionRecognizerForType2Test.java} |  29 ++-
 .../exceprecog/ExceptionRecognizerGeneralTest.java |  32 ++-
 .../core/commons/exceptions/ExceptionUtils.java    |   6 +-
 .../isis/core/commons/lang/ObjectExtensions.java   |   4 +-
 .../isis/core/commons/lang/StringExtensions.java   |  70 +-----
 .../isis/core/commons/lang/StringFunctions.java    |   7 +-
 .../isis/core/commons/lang/StringPredicates.java   |   7 +-
 .../isis/core/commons/reflection/Reflect.java      | 167 --------------
 .../isis/core/metamodel/adapter/oid/Oid.java       |   9 +-
 .../isis/core/metamodel/facetapi/FacetUtil.java    |  10 +-
 .../core/metamodel/facets/MethodFinderUtils.java   |  16 +-
 ...ctionInvocationFacetForDomainEventAbstract.java |  15 +-
 .../ActionDefaultsFacetViaMethodFactory.java       |   3 +-
 .../facets/all/i18n/NamedFacetTranslated.java      |   2 +-
 .../DomainObjectAnnotationFacetFactory.java        |   9 +-
 .../AuditableFacetForDomainObjectAnnotation.java   |   5 +-
 .../domainservice/DomainServiceMenuOrder.java      |   5 +-
 .../ignore/javalang/RemoveMethodsFacetFactory.java |   3 +-
 .../MemberGroupLayoutFacetProperties.java          |  25 ++-
 .../recreatable/RecreatableObjectFacetFactory.java |   8 +-
 .../ActionParameterAutoCompleteFacetViaMethod.java |   3 +-
 ...rameterChoicesFacetDerivedFromChoicesFacet.java |   3 +-
 .../method/ActionChoicesFacetViaMethodFactory.java |   3 +-
 .../ActionParameterChoicesFacetViaMethod.java      |   9 +-
 ...cetInvertedByNullableAnnotationOnParameter.java |   4 +-
 ...ropertyChoicesFacetDerivedFromChoicesFacet.java |   5 +-
 .../MemberOrderFacetComparator.java                |   4 +-
 .../exceprecog/ExceptionRecognizerDocDefault.java  |   7 +-
 .../services/grid/GridLoaderServiceDefault.java    |   3 +-
 .../RepositoryServiceInternalDefault.java          |  33 ++-
 .../core/metamodel/spec/feature/ObjectAction.java  |  18 +-
 .../specloader/specimpl/ObjectActionDefault.java   |   4 +-
 .../core/metamodel/util/DeweyOrderComparator.java  |  51 +----
 .../commons/lang/IterableExtensionsTest_fold.java  |  45 ----
 .../metamodel/facets/MethodFinderUtilsTest.java    |  27 ++-
 .../apache/isis/core/metamodel/facets/Utils.java   |   3 +-
 core/pom.xml                                       |  21 +-
 .../isis/core/runtime/headless/IsisSystem.java     |   2 +-
 .../services/ServicesInstallerFromAnnotation.java  |  36 ++-
 .../core/runtime/system/context/IsisContext.java   | 102 ++++-----
 .../system/session/IsisSessionFactoryBuilder.java  |   8 +-
 .../IsisComponentProvider.java                     |  38 ++--
 .../objectstore/jdo/service/RegisterEntities.java  |  39 +---
 .../DummyAction.java                               |   3 +-
 .../eventbus/EventBusServiceDefaultTest.java       |  22 +-
 .../core/specsupport/specs/CukeGlueAbstract.java   |  16 +-
 core/unittestsupport/pom.xml                       |   1 +
 .../wicket/model/models/EntityCollectionModel.java |  44 ++--
 .../models/LowestCommonSuperclassClosureTest.java  |  13 +-
 .../wicket/ui/components/layout/bs3/col/Col.java   |  18 +-
 .../components/layout/bs3/tabs/TabGroupPanel.java  |  29 +--
 117 files changed, 2354 insertions(+), 1235 deletions(-)

diff --cc core/applib/src/main/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent.java
index 8723792,ccb1331..024721a
--- a/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent.java
@@@ -20,9 -20,10 +20,14 @@@ package org.apache.isis.applib.services
  
  import java.util.EventObject;
  import java.util.Map;
+ 
++import javax.ws.rs.HEAD;
++
 +import com.google.common.collect.Maps;
++
  import org.apache.isis.applib.Identifier;
  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.util.ObjectContracts;
  
@@@ -244,20 -247,20 +249,25 @@@ public abstract class AbstractDomainEve
      public void veto(final String reason, final Object... args) {
          switch (getEventPhase()) {
              case HIDE:
 -                hide(); 
 -                //TODO [ahuber] REVIEW missing break or intended?
 +                hide();
 +                break;
              case DISABLE:
 +                if(reason == null) {
 +                    throw new IllegalArgumentException("Reason must be non-null");
 +                }
                  disable(String.format(reason, args));
 -                //TODO [ahuber] REVIEW missing break or intended?
 +                break;
              case VALIDATE:
 +                if(reason == null) {
 +                    throw new IllegalArgumentException("Reason must be non-null");
 +                }
                  invalidate(String.format(reason, args));
                  break;
 -                
+             case EXECUTED:
+             case EXECUTING:
+             	break;
+             default:
+             	throw _Exceptions.unmatchedCase(getEventPhase());
          }
      }
      /**
@@@ -284,6 -287,13 +294,11 @@@
              case VALIDATE:
                  invalidate(translatableReason);
                  break;
 -                
+             case EXECUTED:
+             case EXECUTING:
+             	break;
+             default:
+             	throw _Exceptions.unmatchedCase(getEventPhase());
 -
          }
      }
      //endregion
diff --cc core/applib/src/main/java/org/apache/isis/schema/utils/CommonDtoUtils.java
index b85a869,44626b0..d3f0159
--- 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
@@@ -34,16 -30,11 +34,16 @@@ import org.joda.time.DateTime
  import org.joda.time.LocalDate;
  import org.joda.time.LocalDateTime;
  import org.joda.time.LocalTime;
- 
+ import org.apache.isis.applib.internal.base._Casts;
+ 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.util.Casts;
 +import org.apache.isis.applib.value.Blob;
 +import org.apache.isis.applib.value.Clob;
 +import org.apache.isis.schema.cmd.v1.MapDto;
  import org.apache.isis.schema.cmd.v1.ParamDto;
 +import org.apache.isis.schema.common.v1.BlobDto;
 +import org.apache.isis.schema.common.v1.ClobDto;
  import org.apache.isis.schema.common.v1.CollectionDto;
  import org.apache.isis.schema.common.v1.EnumDto;
  import org.apache.isis.schema.common.v1.OidDto;
@@@ -357,17 -321,9 +354,17 @@@ public final class CommonDtoUtils 
              final String enumType = enumDto.getEnumType();
              @SuppressWarnings("rawtypes") 
              final Class<? extends Enum> enumClass = loadClassElseThrow(enumType);
-             return Enum.valueOf(Casts.uncheckedCast(enumClass), enumDto.getEnumName());
+             return Enum.valueOf(_Casts.uncheckedCast(enumClass), enumDto.getEnumName());
          case REFERENCE:
              return valueDto.getReference();
 +        case COLLECTION:
 +            return valueDto.getCollection();
 +        case BLOB:
 +            final BlobDto blobDto = valueDto.getBlob();
 +            return new Blob(blobDto.getName(), blobDto.getMimeType(), blobDto.getBytes());
 +        case CLOB:
 +            final ClobDto clobDto = valueDto.getClob();
 +            return new Clob(clobDto.getName(), clobDto.getMimeType(), clobDto.getChars());
          case VOID:
              return null;
          default:
diff --cc core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java
index 0c421e4,ad9525b..f8166ee
--- 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
@@@ -20,15 -20,8 +20,16 @@@ package org.apache.isis.core.metamodel.
  import java.util.Collections;
  import java.util.Comparator;
  import java.util.List;
+ import java.util.stream.Collectors;
  
 +import javax.annotation.Nullable;
 +
 +import com.google.common.base.Objects;
 +import com.google.common.base.Predicate;
 +import com.google.common.base.Strings;
 +import com.google.common.collect.FluentIterable;
 +import com.google.common.collect.Lists;
 +
  import org.apache.isis.applib.Identifier;
  import org.apache.isis.applib.annotation.ActionLayout;
  import org.apache.isis.applib.annotation.InvokeOn;
diff --cc core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionFactoryBuilder.java
index 5c9e0b4,bb08a05..7a56c93
--- 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
@@@ -222,8 -219,9 +220,8 @@@ public class IsisSessionFactoryBuilder 
                                  if(LOG.isDebugEnabled()) {
                                      LOG.debug("Meta model invalid", ex);
                                  }
-                                 IsisContext.setMetaModelInvalidException(ex);
+                                 _Context.putSingleton(MetaModelInvalidException.class, ex);
                              }
 -
                          }
                      }
              );
diff --cc core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
index e40d778,e86b7af..f32d18f
--- 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
@@@ -211,14 -197,12 +208,14 @@@ public class EntityCollectionModel exte
          public abstract String getName(EntityCollectionModel entityCollectionModel);
  
          public abstract int getCount(EntityCollectionModel entityCollectionModel);
 +
 +        public abstract EntityModel.RenderingHint renderingHint();
      }
  
-     static class LowestCommonSuperclassClosure implements Closure<Class<?>>{
+     static class LowestCommonSuperclassFinder {
          private Class<?> common;
-         @Override
-         public Class<?> execute(final Class<?> value) {
+         
+         public void collect(final Class<?> value) {
              if(common == null) {
                  common = value;
              } else {

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