> On Sept. 1, 2017, 6:54 p.m., Sarath Subramanian wrote:
> > intg/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
> > Lines 181 (patched)
> > <https://reviews.apache.org/r/61526/diff/3/?file=1810641#file1810641line181>
> >
> >     NPE here when 's' is null. Consider refactoring like:
> >     
> >     public void addEntityType(String typeName) {
> >             if (StringUtils.isEmpty(typeName)) {
> >                 return;
> >             }
> >     
> >             Set<String> s = this.entityTypes;
> >     
> >             if (s == null) {
> >                 s = new HashSet<>();
> >             }
> >     
> >             if (!s.contains(typeName)) {
> >                 s.add(typeName);
> >             }
> >     
> >             this.entityTypes = s;
> >         }

This is the same as the logic for supertypes.
I do not think s can be null here. All the constructors end up going through 
the one that issues  setEntityTypes; if this setter is passed a null then it 
will initialise the this.entityTypes to an empty set.


> On Sept. 1, 2017, 6:54 p.m., Sarath Subramanian wrote:
> > intg/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
> > Lines 193 (patched)
> > <https://reviews.apache.org/r/61526/diff/3/?file=1810641#file1810641line193>
> >
> >     NPE when 's' is null

as above


- David


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61526/#review184375
-----------------------------------------------------------


On Sept. 1, 2017, 9:50 a.m., David Radley wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/61526/
> -----------------------------------------------------------
> 
> (Updated Sept. 1, 2017, 9:50 a.m.)
> 
> 
> Review request for atlas, Graham Wallis, Madhan Neethiraj, and Sarath 
> Subramanian.
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> ATLAS-2029: Restrict entities, classifications can be applied to
> 
> 
> Diffs
> -----
> 
>   intg/src/main/java/org/apache/atlas/AtlasErrorCode.java 
> 2503d8ef203cf4efbe15b440257b1da2252b6153 
>   
> intg/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
> eeaf71413a56c08db8170fd3323b8e8245ae44fe 
>   intg/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> cc3e45ed2f059ad0c5731dc1da7e592d139c3e7a 
>   intg/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> 28215fd2aa33ec8011f6900b68c672b685053e7a 
>   intg/src/main/java/org/apache/atlas/type/AtlasTypeUtil.java 
> ab063e23e355f74668af389b97f7da03b2a8f90f 
>   intg/src/test/java/org/apache/atlas/TestUtilsV2.java 
> fc65af057255b4c17378080ee4fb7cbfc780c3fe 
>   intg/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
> aaf4a6ac0a978e5eb6de41279cae1b1c82373374 
>   
> repository/src/main/java/org/apache/atlas/repository/store/graph/v1/AtlasClassificationDefStoreV1.java
>  e3aa4e0b2317bec47426a914f6feae68b17851dd 
>   
> repository/src/main/java/org/apache/atlas/repository/store/graph/v1/AtlasEntityStoreV1.java
>  1c168b4cff0d105c7a0d4a9fbdb50871388c917e 
>   
> repository/src/main/java/org/apache/atlas/repository/store/graph/v1/AtlasGraphUtilsV1.java
>  227f7cd12a9b23c3bbc1cfdc40d06616ea775ca4 
>   
> repository/src/main/java/org/apache/atlas/repository/store/graph/v1/AtlasTypeDefGraphStoreV1.java
>  f639ea56e6188837e069a5fcba953d9d196af0e5 
>   
> repository/src/test/java/org/apache/atlas/repository/store/graph/AtlasTypeDefGraphStoreTest.java
>  8638a7f17e8a17d3a6e0bfb94879b5c5406be1a3 
>   
> repository/src/test/java/org/apache/atlas/repository/store/graph/v1/AtlasEntityStoreV1Test.java
>  62fad5b02a7229d9bc3083690980eb063756bc29 
> 
> 
> Diff: https://reviews.apache.org/r/61526/diff/3/
> 
> 
> Testing
> -------
> 
> Testing
> performed unit tests
> 
> Using postman
> 1) create an entityDef  aaa
> 2) create a classificationDef with an entitytype  aaaa - checked that it is 
> in the response
> 3) Create a entity instance of aaa
> 4) add the classification to it
> 5) Create an entity instance with a different type bbbb
> 6) Attempt to add the classification to bbbb. this fails with an informative 
> message
> 7) Attempt to update the ClassificationDef to remove the entity type - this 
> fails with an informative message
> 8) Attempt to update the classificationdef to add bbbb. this update works. 
> 9) Attempt to add an entity type that does not exist to the 
> ClassificationDef. this should fail.  
> 10) Attempt to update an entity type that does not exist to the 
> ClassificationDef. this should fail.
> 
> 
> Thanks,
> 
> David Radley
> 
>

Reply via email to