Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-10-02 Thread Shwetha GS

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


Ship it!




Ship It!

- Shwetha GS


On Oct. 2, 2016, 5:55 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Oct. 2, 2016, 5:55 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   intg/pom.xml PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/exception/AtlasBaseException.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> intg/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   intg/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> intg/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
> PRE-CREATION 
>   intg/src/test/java/org/apache/atlas/type/Tes

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-10-01 Thread Madhan Neethiraj

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

(Updated Oct. 2, 2016, 5:55 a.m.)


Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.


Changes
---

Updates to support deferred resolution of referred types (i.e. an entity 
attribute referrring to another entity) to enable initialization from store.


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

ATLAS-1171: structured, high-level APIs - phase #1
- define data-strctures for use in the interface (REST, ..) to describe types 
and instances: in package org.apache.atlas.model
- implementation of runtime behaviour of types - create/validate/normalize 
instances (i.e. from values in REST to typed-values): in package 
org.apache.atlas.type

I think phase #1 in providing high-level APIs is now ready to review and 
commit. Please note this patch only includes new files and there are no changes 
to any existing code. Please review.

Next steps:
- Phase #2 will include the REST API and the modules that deal with persistence 
of type and instance objects (defined in phase #1) in Tital Graph database.
- Phase #3 will replace current REST API implementation to use the new APIs, 
while continuing to provide the current REST API.
- GUI updates to use the new API can  begin once phase #2 goes in.


Diffs (updated)
-

  intg/pom.xml PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/exception/AtlasBaseException.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
intg/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasByteType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasDateType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  intg/src

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-30 Thread Madhan Neethiraj

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

(Updated Sept. 30, 2016, 11:06 p.m.)


Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.


Changes
---

Moved the new sources from atlas-common module to atlas-intg module, per the 
review suggestion. Thanks Shwetha.


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

ATLAS-1171: structured, high-level APIs - phase #1
- define data-strctures for use in the interface (REST, ..) to describe types 
and instances: in package org.apache.atlas.model
- implementation of runtime behaviour of types - create/validate/normalize 
instances (i.e. from values in REST to typed-values): in package 
org.apache.atlas.type

I think phase #1 in providing high-level APIs is now ready to review and 
commit. Please note this patch only includes new files and there are no changes 
to any existing code. Please review.

Next steps:
- Phase #2 will include the REST API and the modules that deal with persistence 
of type and instance objects (defined in phase #1) in Tital Graph database.
- Phase #3 will replace current REST API implementation to use the new APIs, 
while continuing to provide the current REST API.
- GUI updates to use the new API can  begin once phase #2 goes in.


Diffs (updated)
-

  intg/pom.xml PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/exception/AtlasBaseException.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  intg/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
intg/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasByteType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasDateType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  intg/src/test/java/org/apache/atlas/type/Te

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-30 Thread Madhan Neethiraj


> On Sept. 30, 2016, 5:21 a.m., Shwetha GS wrote:
> > Previously, the common module contained some common code required for atlas 
> > server. Since the new classes that are added are client side classes, can 
> > you move them to new module clientv2 so that we have clear dependencies for 
> > atlas clients.
> > 
> > Also, move the server side rest API to webappv2 and webapp can depend on 
> > webappv2
> 
> Madhan Neethiraj wrote:
> atlas-common module is being referenced by a number of other modules - 
> not just Atlas server. Like: typesystem, notification, authorization, 
> hive-bridge, falcon-bridge, sqoop-bridge, storm-bridge. Hence I have the new 
> classes in atlas-common module.
> 
> Shwetha GS wrote:
> Type system module, for example has both client and server side code. 
> Since the clients would anyway depend on type system module, it becomes 
> difficult to restrict the clients to not use any server side classes in the 
> type system module, and they will be confused about the right classes to use. 
> Instead, if we separate out the dependencies right, it will go a long way in 
> helping the clients to integrate easily
> 
> Yes, the server side modules need to depend on this new module. If I 
> understand your intentions right, clientv2 will be the only point of atlas 
> reference for all clients, and will replace all existing dependencies(common, 
> typesystem, notification etc)

@Shwetha - makes sense. How about naming the new module as 'atlas-intg' (for 
integration), instead of using v2 suffix?


- Madhan


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


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Shwetha GS


> On Sept. 30, 2016, 5:21 a.m., Shwetha GS wrote:
> > Previously, the common module contained some common code required for atlas 
> > server. Since the new classes that are added are client side classes, can 
> > you move them to new module clientv2 so that we have clear dependencies for 
> > atlas clients.
> > 
> > Also, move the server side rest API to webappv2 and webapp can depend on 
> > webappv2
> 
> Madhan Neethiraj wrote:
> atlas-common module is being referenced by a number of other modules - 
> not just Atlas server. Like: typesystem, notification, authorization, 
> hive-bridge, falcon-bridge, sqoop-bridge, storm-bridge. Hence I have the new 
> classes in atlas-common module.

Type system module, for example has both client and server side code. Since the 
clients would anyway depend on type system module, it becomes difficult to 
restrict the clients to not use any server side classes in the type system 
module, and they will be confused about the right classes to use. Instead, if 
we separate out the dependencies right, it will go a long way in helping the 
clients to integrate easily

Yes, the server side modules need to depend on this new module. If I understand 
your intentions right, clientv2 will be the only point of atlas reference for 
all clients, and will replace all existing dependencies(common, typesystem, 
notification etc)


- Shwetha


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


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/m

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj


> On Sept. 30, 2016, 5:21 a.m., Shwetha GS wrote:
> > Previously, the common module contained some common code required for atlas 
> > server. Since the new classes that are added are client side classes, can 
> > you move them to new module clientv2 so that we have clear dependencies for 
> > atlas clients.
> > 
> > Also, move the server side rest API to webappv2 and webapp can depend on 
> > webappv2

atlas-common module is being referenced by a number of other modules - not just 
Atlas server. Like: typesystem, notification, authorization, hive-bridge, 
falcon-bridge, sqoop-bridge, storm-bridge. Hence I have the new classes in 
atlas-common module.


- Madhan


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


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtl

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Shwetha GS

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



Previously, the common module contained some common code required for atlas 
server. Since the new classes that are added are client side classes, can you 
move them to new module clientv2 so that we have clear dependencies for atlas 
clients.

Also, move the server side rest API to webappv2 and webapp can depend on 
webappv2

- Shwetha GS


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/j

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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


Ship it!




Ship It!

- Suma Shivaprasad


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/T

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad


> On Sept. 30, 2016, 12:51 a.m., Suma Shivaprasad wrote:
> > common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java, 
> > line 242
> > 
> >
> > would prefer valuesMinCount and valuesMaxCount also to be part of the 
> > Enum Def and @XmlEnummapping for unmarshalling. the reason we want this is 
> > valuesMinCount/maxCount are not part of constructor and could easily be 
> > missed by user while supplying values
> 
> Madhan Neethiraj wrote:
> Suma - I am not sure if Java allows enums that can take parameterized 
> values at instantiation. Like: attr.cardinality = Cardinality.LIST(1, 10). If 
> you are suggesting a different syntax, can you please add details?
> 
> >> the reason we want this is valuesMinCount/maxCount are not part of 
> constructor and could easily be missed by user while supplying values
> 
> Initially I had a constructor that took minCount and maxCount parameters. 
> But had to get rid of it since it violated a PMD rule that complained about 
> "too many parameters.." (> 7).

Yes missed that enums wudnt allow this. We could make it a class instead like 
current Multiplicity and the getters/setters should take care of the 
unmarshalling?


- Suma


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


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/tes

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj


> On Sept. 30, 2016, 12:51 a.m., Suma Shivaprasad wrote:
> > common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java, 
> > line 242
> > 
> >
> > would prefer valuesMinCount and valuesMaxCount also to be part of the 
> > Enum Def and @XmlEnummapping for unmarshalling. the reason we want this is 
> > valuesMinCount/maxCount are not part of constructor and could easily be 
> > missed by user while supplying values

Suma - I am not sure if Java allows enums that can take parameterized values at 
instantiation. Like: attr.cardinality = Cardinality.LIST(1, 10). If you are 
suggesting a different syntax, can you please add details?

>> the reason we want this is valuesMinCount/maxCount are not part of 
>> constructor and could easily be missed by user while supplying values

Initially I had a constructor that took minCount and maxCount parameters. But 
had to get rid of it since it violated a PMD rule that complained about "too 
many parameters.." (> 7).


- Madhan


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


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/Te

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java (line 
242)


would prefer valuesMinCount and valuesMaxCount also to be part of the Enum 
Def and @XmlEnummapping for unmarshalling. the reason we want this is 
valuesMinCount/maxCount are not part of constructor and could easily be missed 
by user while supplying values


- Suma Shivaprasad


On Sept. 30, 2016, 12:04 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 30, 2016, 12:04 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj

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

(Updated Sept. 30, 2016, 12:04 a.m.)


Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.


Changes
---

Updated AtlasAttributeDef to replace { isMultiValued, areValuesUnique } with an 
enum - Cardinality { SINGLE, LIST, SET } - thanks Suma for the suggestion.


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

ATLAS-1171: structured, high-level APIs - phase #1
- define data-strctures for use in the interface (REST, ..) to describe types 
and instances: in package org.apache.atlas.model
- implementation of runtime behaviour of types - create/validate/normalize 
instances (i.e. from values in REST to typed-values): in package 
org.apache.atlas.type

I think phase #1 in providing high-level APIs is now ready to review and 
commit. Please note this patch only includes new files and there are no changes 
to any existing code. Please review.

Next steps:
- Phase #2 will include the REST API and the modules that deal with persistence 
of type and instance objects (defined in phase #1) in Tital Graph database.
- Phase #3 will replace current REST API implementation to use the new APIs, 
while continuing to provide the current REST API.
- GUI updates to use the new API can  begin once phase #2 goes in.


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  com

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad


> On Sept. 29, 2016, 8:41 p.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java, 
> > line 247
> > 
> >
> > Would documenting the following using these attributes help make it 
> > clear?
> > 
> > if (value == null) {
> >   if (!isOptional) {
> > // invalid value
> >   }
> > } else {
> >   if (isMultiValued) {
> > if (!isCollection(value)) {
> >   // invalid value
> > }
> > 
> > if(valueMinCount > getCount(value) > valueMaxCount) {
> >   // invalid value
> > }
> > 
> > if(areValuesUnique) {
> >   // a set of values
> > } else {
> >   // a list of values
> > }
> >   } else {
> >  // single-value
> >   }
> > }
> > 
> > isUnique & areValuesUnique:
> >  - areValuesUnique is applicable only for multi-valued attributes; and 
> > is only amongst the values of this attribute instance
> >  - isUnique is for unique attribute value across all containing objects
> > 
> > Any suggestions to make this more intutitive and precise?

I think it would make sense to have isOptional as a separate flag and the 
number of times a value could occur can be modelled as an enum - SINGLE, LIST, 
SET like titan cardinality 
https://github.com/thinkaurelius/titan/blob/titan10/titan-core/src/main/java/com/thinkaurelius/titan/core/Cardinality.java.
 This would allow us to model optional list or set as well


- Suma


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


On Sept. 29, 2016, 9:12 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 9:12 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apach

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj

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

(Updated Sept. 29, 2016, 9:12 p.m.)


Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.


Changes
---

- updates to address review comments
- Removed AtlasEntity.classfications member, so that AtlasEntity will only deal 
with an entity's attributes. We will add another class to capture extended 
details of an entity - like classifications, terms


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

ATLAS-1171: structured, high-level APIs - phase #1
- define data-strctures for use in the interface (REST, ..) to describe types 
and instances: in package org.apache.atlas.model
- implementation of runtime behaviour of types - create/validate/normalize 
instances (i.e. from values in REST to typed-values): in package 
org.apache.atlas.type

I think phase #1 in providing high-level APIs is now ready to review and 
commit. Please note this patch only includes new files and there are no changes 
to any existing code. Please review.

Next steps:
- Phase #2 will include the REST API and the modules that deal with persistence 
of type and instance objects (defined in phase #1) in Tital Graph database.
- Phase #3 will replace current REST API implementation to use the new APIs, 
while continuing to provide the current REST API.
- GUI updates to use the new API can  begin once phase #2 goes in.


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java 
PRE-CREATION

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad


> On Sept. 29, 2016, 8:41 p.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java, line 31
> > 
> >
> > I agree, such API could be useful. Once we have concrete usecases 
> > identified, lets update the API to support the usecases. I suggest we take 
> > this up in a subsequent patch.

Sure.


- Suma


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


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apach

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj

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




common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java (line 31)


I agree, such API could be useful. Once we have concrete usecases 
identified, lets update the API to support the usecases. I suggest we take this 
up in a subsequent patch.



common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java (line 40)


Yes, I agree. Lets cover this in phase #2.



common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java (line 
247)


Would documenting the following using these attributes help make it clear?

if (value == null) {
  if (!isOptional) {
// invalid value
  }
} else {
  if (isMultiValued) {
if (!isCollection(value)) {
  // invalid value
}

if(valueMinCount > getCount(value) > valueMaxCount) {
  // invalid value
}

if(areValuesUnique) {
  // a set of values
} else {
  // a list of values
}
  } else {
 // single-value
  }
}

isUnique & areValuesUnique:
 - areValuesUnique is applicable only for multi-valued attributes; and is 
only amongst the values of this attribute instance
 - isUnique is for unique attribute value across all containing objects

Any suggestions to make this more intutitive and precise?



common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java (line 258)


This cache is independent of any existing cache implementations. If/when 
this cache becomes inadequate, we can enhance this to support other stores.


- Madhan Neethiraj


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad


> On Sept. 29, 2016, 6:55 p.m., Suma Shivaprasad wrote:
> > common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java, line 31
> > 
> >
> > Current existing implementations of the Atlas entity CRUD apis had a 
> > limitation while trying to  do multiple types of operations in the same 
> > transaction - for eg: a rename table had multiple operations like update a 
> > bunch of columns, rename storage descriptor, table etc. We should also 
> > support batch entity apis which allow for multiple CRUD operations to be 
> > batched in the same request which would all go through one transaction?

The other use case for this was in Falcon Hook where it was required to 
partially update a hive table and fully update a falcon entity as part of a 
single transaction.  There is no way to do this currently


- Suma


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


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/or

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad


> On Sept. 29, 2016, 7:31 p.m., Suma Shivaprasad wrote:
> > common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java, 
> > line 247
> > 
> >
> > since we have split this, valuesMinCount and valueMaxCount could be 
> > interpreted to apply even for primitive integer type attributes as a kind 
> > of value constraint. Was this the intention or its only for collection/set 
> > types? If thats the case, it may be more confusing with this split than 
> > with the earlier Multiplicity options.

also is the case with areValuesUnique . Is it confusing with this and isUnique 
also around. We need to think through this and come up with something better


- Suma


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


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.ja

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java (line 
247)


since we have split this, valuesMinCount and valueMaxCount could be 
interpreted to apply even for primitive integer type attributes as a kind of 
value constraint. Was this the intention or its only for collection/set types? 
If thats the case, it may be more confusing with this split than with the 
earlier Multiplicity options.


- Suma Shivaprasad


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlas

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java (line 258)


currently there is a in memory type cache and a storecackedtypecache and 
are implementations of the TypeCache interface. Where are we handling this?


- Suma Shivaprasad


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBoo

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java (line 49)


would be better to have REST APIs deal with Struct and entity interfaces 
instead of concrete implemenations and map them to concrete classes through 
JAXB annotations?


- Suma Shivaprasad


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/a

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java (line 40)


current APIs support batch deletion of entities by guids. If we support 
batch API with multiple CRUD operations , should get covered as part of that


- Suma Shivaprasad


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBoolea

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java (line 
69)


we should throw an Exception in error conditions


- Suma Shivaprasad


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java (line 31)


Current existing implementations of the Atlas entity CRUD apis had a 
limitation while trying to  do multiple types of operations in the same 
transaction - for eg: a rename table had multiple operations like update a 
bunch of columns, rename storage descriptor, table etc. We should also support 
batch entity apis which allow for multiple CRUD operations to be batched in the 
same request which would all go through one transaction?


- Suma Shivaprasad


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/Te

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/SearchFilter.java (line 48)


long here as well


- Suma Shivaprasad


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   common/src/test/j

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj


> On Sept. 29, 2016, 4:48 a.m., Sarath Kumar Subramanian wrote:
> > common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java, 
> > line 249
> > 
> >
> > reverseAttributeName and isComposite attributes are missing

I am not clear on reverseAttributeName usage. From the name, it seems to be 
something for the server side to use (for quick look up?); it that is the case, 
then this attribute is not necessary in the interface.

I think we should revisit the use of isComposite attribute. Can we get to this 
in the next iteration?


- Madhan


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


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
> 

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj


> On Sept. 29, 2016, 5:06 a.m., Sarath Kumar Subramanian wrote:
> > common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java, 
> > line 243
> > 
> >
> > In current design, Multiplicity attribute is overloaded to determine if 
> > an attribute can be optional, required, collection or set. These are broken 
> > down into granular attributes in this design. If the plan is to continue 
> > supporting existing REST APIs, what will be the mapping from this granular 
> > attributes to current one? 
> > eg. Required Collection or Optional Set. Which one takes precedence?

Current implmentation does not seem to allow a multi-valued attribute to be 
optional. If this is the case, I think the following mapping would work:

if(isOptional()) ==> OPTIONAL
else if(!isMultiValued()) ==> REQUIRED
else if(areValuesUnique()) ==> SET
else ==> COLLECTION


- Madhan


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


On Sept. 29, 2016, 6:11 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 6:11 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificati

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Madhan Neethiraj

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

(Updated Sept. 29, 2016, 6:11 p.m.)


Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.


Changes
---

Updated to fix NPE in enums with no default values. Added unit tests to cover 
this case.


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

ATLAS-1171: structured, high-level APIs - phase #1
- define data-strctures for use in the interface (REST, ..) to describe types 
and instances: in package org.apache.atlas.model
- implementation of runtime behaviour of types - create/validate/normalize 
instances (i.e. from values in REST to typed-values): in package 
org.apache.atlas.type

I think phase #1 in providing high-level APIs is now ready to review and 
commit. Please note this patch only includes new files and there are no changes 
to any existing code. Please review.

Next steps:
- Phase #2 will include the REST API and the modules that deal with persistence 
of type and instance objects (defined in phase #1) in Tital Graph database.
- Phase #3 will replace current REST API implementation to use the new APIs, 
while continuing to provide the current REST API.
- GUI updates to use the new API can  begin once phase #2 goes in.


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasLongType.java 
PRE

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-29 Thread Apoorv Naik

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




common/src/main/java/org/apache/atlas/type/AtlasEnumType.java (line 50)


e.get(0) on map ? Getting NPEs because of this.


- Apoorv Naik


On Sept. 29, 2016, 4:08 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 4:08 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREA

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Sarath Kumar Subramanian

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




common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java (line 
243)


In current design, Multiplicity attribute is overloaded to determine if an 
attribute can be optional, required, collection or set. These are broken down 
into granular attributes in this design. If the plan is to continue supporting 
existing REST APIs, what will be the mapping from this granular attributes to 
current one? 
eg. Required Collection or Optional Set. Which one takes precedence?


- Sarath Kumar Subramanian


On Sept. 28, 2016, 9:08 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 9:08 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.j

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Sarath Kumar Subramanian

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




common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java (line 
249)


reverseAttributeName and isComposite attributes are missing


- Sarath Kumar Subramanian


On Sept. 28, 2016, 9:08 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 9:08 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/ty

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Madhan Neethiraj


> On Sept. 29, 2016, 2:38 a.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java, line 35
> > 
> >
> > All type definitions, including AtlasEnumDef, have few common 
> > attributes - guid is one of them. Use of guids for objects can be helpful 
> > in many cases - like import/export; hence I included it for type-objects.

This is the response to earlier review comment by Suma.


- Madhan


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


On Sept. 29, 2016, 4:08 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 4:08 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Madhan Neethiraj


> On Sept. 29, 2016, 3:46 a.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java, 
> > line 40
> > 
> >
> > version would be part of the object and not the object-id. Most APIs 
> > would deal with the current version of an object. A separate set of APIs 
> > would be required to retrieve earlier version(s) of an object.

This is the response to earlier review comment by Suma.


> On Sept. 29, 2016, 3:46 a.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/type/AtlasType.java, line 66
> > 
> >
> > AtlasBaseTypeDef sounds like a good to place to keep all type-related 
> > constants and utility methods. Will move in the next patch.

This is the response to earlier review comment by Suma.


- Madhan


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


On Sept. 29, 2016, 4:08 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 29, 2016, 4:08 a.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREA

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Madhan Neethiraj

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

(Updated Sept. 29, 2016, 4:08 a.m.)


Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.


Changes
---

Suma - thanks for the review comments. This patch addresses the comments.


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

ATLAS-1171: structured, high-level APIs - phase #1
- define data-strctures for use in the interface (REST, ..) to describe types 
and instances: in package org.apache.atlas.model
- implementation of runtime behaviour of types - create/validate/normalize 
instances (i.e. from values in REST to typed-values): in package 
org.apache.atlas.type

I think phase #1 in providing high-level APIs is now ready to review and 
commit. Please note this patch only includes new files and there are no changes 
to any existing code. Please review.

Next steps:
- Phase #2 will include the REST API and the modules that deal with persistence 
of type and instance objects (defined in phase #1) in Tital Graph database.
- Phase #3 will replace current REST API implementation to use the new APIs, 
while continuing to provide the current REST API.
- GUI updates to use the new API can  begin once phase #2 goes in.


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasLongType.java 
PRE-CREATION 
  com

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Madhan Neethiraj

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




common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java (line 
40)


version would be part of the object and not the object-id. Most APIs would 
deal with the current version of an object. A separate set of APIs would be 
required to retrieve earlier version(s) of an object.



common/src/main/java/org/apache/atlas/type/AtlasType.java (line 49)


AtlasType implementations return typed values - like:

Boolean AtlasBooleanType.createDefaultValue();
Integer AtlasIntType.createDefaultValue();



common/src/main/java/org/apache/atlas/type/AtlasType.java (line 66)


AtlasBaseTypeDef sounds like a good to place to keep all type-related 
constants and utility methods. Will move in the next patch.


- Madhan Neethiraj


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Apoorv Naik


> On Sept. 29, 2016, 2:38 a.m., Madhan Neethiraj wrote:
> > common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java, line 35
> > 
> >
> > updateEntity() is for full-update of an entity. A new API would be 
> > needed to support partial update. How about the following API?
> > 
> > AtlasEntity updateEntityAttributes(AtlasObjectId objId, Map > Object> atributes) throws AtlasException;
> > 
> > This API will only update the attributes given in the argument.

Can we introduce a HTTP PATCH API that takes in a JsonPatch for the 
corresponding type/entity ? Signature will be similar


- Apoorv


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


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atl

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Madhan Neethiraj

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




common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java (line 35)


All type definitions, including AtlasEnumDef, have few common attributes - 
guid is one of them. Use of guids for objects can be helpful in many cases - 
like import/export; hence I included it for type-objects.



common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java (line 35)


updateEntity() is for full-update of an entity. A new API would be needed 
to support partial update. How about the following API?

AtlasEntity updateEntityAttributes(AtlasObjectId objId, Map 
atributes) throws AtlasException;

This API will only update the attributes given in the argument.



common/src/main/java/org/apache/atlas/api/PList.java (line 45)


Yes. I will update shortly.



common/src/main/java/org/apache/atlas/api/PList.java (line 48)


it is the number of records in the result. Given that this can be obtained 
from getList().size(), resultSize is not needed. I will remove this.



common/src/main/java/org/apache/atlas/api/PList.java (line 49)


I agree. I will change this to an enum shortly.


- Madhan Neethiraj


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/type/AtlasType.java (line 49)


can use generics instead of Object


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   co

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java (line 
40)


why is version removed?


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
> 

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java (line 35)


why do we need GUIDs for types?


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   co

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/type/AtlasType.java (line 66)


could be moved to ArrayType


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   common/sr

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/PList.java (line 48)


is resultSize = limit ?


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   common/src/test/ja

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java (line 35)


How are we differentiating between Partial updates  vs fullupdates?


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtl

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/PList.java (line 45)


startIndex should be long


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   common/src/test/

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/PList.java (line 49)


sortType can be an enum.


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   common/src/test/j

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Suma Shivaprasad

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




common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java (line 35)


Enums dont have a GUID.


- Suma Shivaprasad


On Sept. 28, 2016, 6:43 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 28, 2016, 6:43 p.m.)
> 
> 
> Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> ATLAS-1171: structured, high-level APIs - phase #1
> - define data-strctures for use in the interface (REST, ..) to describe types 
> and instances: in package org.apache.atlas.model
> - implementation of runtime behaviour of types - create/validate/normalize 
> instances (i.e. from values in REST to typed-values): in package 
> org.apache.atlas.type
> 
> I think phase #1 in providing high-level APIs is now ready to review and 
> commit. Please note this patch only includes new files and there are no 
> changes to any existing code. Please review.
> 
> Next steps:
> - Phase #2 will include the REST API and the modules that deal with 
> persistence of type and instance objects (defined in phase #1) in Tital Graph 
> database.
> - Phase #3 will replace current REST API implementation to use the new APIs, 
> while continuing to provide the current REST API.
> - GUI updates to use the new API can  begin once phase #2 goes in.
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   
> common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
> PRE-CREATION 
>   
> common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
>  PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
> PRE-CREATION 
>   common/src

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Madhan Neethiraj

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

(Updated Sept. 28, 2016, 6:43 p.m.)


Review request for atlas, Abhay Kulkarni and Selvamohan Neethiraj.


Changes
---

ATLAS-1171: structured, high-level APIs - phase #1
 - updated to handle multi-valued attributes: default-value, validation


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description (updated)
---

ATLAS-1171: structured, high-level APIs - phase #1
- define data-strctures for use in the interface (REST, ..) to describe types 
and instances: in package org.apache.atlas.model
- implementation of runtime behaviour of types - create/validate/normalize 
instances (i.e. from values in REST to typed-values): in package 
org.apache.atlas.type

I think phase #1 in providing high-level APIs is now ready to review and 
commit. Please note this patch only includes new files and there are no changes 
to any existing code. Please review.

Next steps:
- Phase #2 will include the REST API and the modules that deal with persistence 
of type and instance objects (defined in phase #1) in Tital Graph database.
- Phase #3 will replace current REST API implementation to use the new APIs, 
while continuing to provide the current REST API.
- GUI updates to use the new API can  begin once phase #2 goes in.


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  common/src/test/java/org/ap

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-28 Thread Madhan Neethiraj

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

(Updated Sept. 28, 2016, 7:20 a.m.)


Review request for atlas.


Changes
---

Updates to resolve style violations


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

first-cut API for review


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasLongType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasMapType.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasObjectIdType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasShortType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasStringType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasStructType.java 
PRE-CREATION 
  pom.xml ac5b042 
  webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java PRE-CREATION 

Diff: https://reviews.apache.org/r/51896/diff/


Testing
---


Thanks,

Madhan Neethiraj



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-27 Thread Madhan Neethiraj

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

(Updated Sept. 28, 2016, 2:17 a.m.)


Review request for atlas.


Changes
---

- added more unit tests
- renamed package org.apache.atlas.typesystem to org.apache.atlas.type
- updated a bunch to comply with "white-space" requirements like: "if(" ==> "if 
(", "for(" ==> "for (", "! value" ==> "!value", etc


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

first-cut API for review


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasArrayType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEntityType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasEnumType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasMapType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasStructType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasType.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/type/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasClassificationType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasEntityType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasFloatType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasIntType.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasLongType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasMapType.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasObjectIdType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasShortType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasStringType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/type/TestAtlasStructType.java 
PRE-CREATION 
  pom.xml ac5b042 
  webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java PRE-CREATION 

Diff: https://reviews.apache.org/r/51896/diff/


Testing
---


Thanks,

Madhan Neethiraj



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-26 Thread Madhan Neethiraj

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

(Updated Sept. 26, 2016, 9:21 a.m.)


Review request for atlas.


Changes
---

- added method AtlasDataType.validateValue()
- added unit bunch of unit tests


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

first-cut API for review


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasAsset.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasProcess.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasArrayType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasDataType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEntityType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEnumType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasMapType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasStructType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/instance/TestAtlasClassification.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasArrayType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasBigDecimalType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasBigIntegerType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasBooleanType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasByteType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasDateType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasDoubleType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasFloatType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasIntType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasLongType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasObjectIdType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasShortType.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/typesystem/TestAtlasStringType.java 
PRE-CREATION 
  pom.xml ac5b042 
  webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java PRE-CREATION 

Diff: https://reviews.apache.org/r/51896/diff/


Testing
---


Thanks,

Madhan Neethiraj



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-24 Thread Madhan Neethiraj

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

(Updated Sept. 24, 2016, 6:45 p.m.)


Review request for atlas.


Changes
---

- renamed classes AtlasTraitDef -> AtlasClassificationDef; AtlasTrait -> 
AtlasClassification
- renamed packages org.apache.atlas.model.types -> 
org.apache.atlas.model.typedef; org.apache.atlas.model.instances -> 
org.apache.atlas.model.instance
- added class AtlasAsset


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

first-cut API for review


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasAsset.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasClassification.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasProcess.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instance/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasBaseTypeDef.java 
PRE-CREATION 
  
common/src/main/java/org/apache/atlas/model/typedef/AtlasClassificationDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/typedef/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasArrayType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasClassificationType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasDataType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEntityType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEnumType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasMapType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasStructType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instance/TestAtlasEntity.java 
PRE-CREATION 
  
common/src/test/java/org/apache/atlas/model/typedef/TestAtlasClassificationDef.java
 PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/typedef/TestAtlasStructDef.java 
PRE-CREATION 
  pom.xml ac5b042 
  webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java PRE-CREATION 

Diff: https://reviews.apache.org/r/51896/diff/


Testing
---


Thanks,

Madhan Neethiraj



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-20 Thread Jeff Hagelberg


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java, line 61
> > 
> >
> > Why is this needed?  It seems like if 'valuesMaxCount' > 1, it is 
> > automatically multi-valued.
> 
> Madhan Neethiraj wrote:
> Please see my earlier commit. I think the use of explicit attributes like 
> isMultiValued make it easier to read/understand.

I think that makes sense, but what happens if someone sets isMultiValued=true 
and valuesMaxCount=0.  Would a configuration like that be allowed?  It seems 
like the parameters should be defined in a way that does not allow invalid 
configurations to be specified.


- Jeff


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


On Sept. 20, 2016, 8:06 a.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 20, 2016, 8:06 a.m.)
> 
> 
> Review request for atlas.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> first-cut API for review
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasProcess.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasTrait.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasTraitDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasArrayType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasBuiltInTypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasDataType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasEntityType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasEnumType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasMapType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasStructType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasTraitType.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/typesystem/AtlasTypeRegistry.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/instances/TestAtlasEntity.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/types/TestAtlasEntityDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/types/TestAtlasEnumDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/types/TestAtlasStructDef.java 
> PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/types/TestAtlasTraitDef.java 
> PRE-CREATION 
>   pom.xml ac5b042 
>   webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/51896/diff/
> 
> 
> Testing
> ---
> 
> 
> Thanks,
> 
> Madhan Neethiraj
> 
>



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-20 Thread Madhan Neethiraj

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

(Updated Sept. 20, 2016, 8:06 a.m.)


Review request for atlas.


Changes
---

- added TypesREST.java, the REST API to work with type-defs 
(enum/struct/trait/entity). This should provide the necessary details for 
integration. A similar interface will shorlty be added for instances - to deal 
with creation of entity/trait/process/add-remove-trait/lineage. Implementation 
of these interfaces will be added later.
- Jeff - thanks for the review and comments. Addressed few of these comments in 
this update.


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

first-cut API for review


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasApiEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasApiTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/PList.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasProcess.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasTrait.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasBaseTypeDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasTraitDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasArrayType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasDataType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEntityType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEnumType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasMapType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasStructType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasTraitType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instances/TestAtlasEntity.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasTraitDef.java 
PRE-CREATION 
  pom.xml ac5b042 
  webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java PRE-CREATION 

Diff: https://reviews.apache.org/r/51896/diff/


Testing
---


Thanks,

Madhan Neethiraj



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-20 Thread Madhan Neethiraj


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java, line 58
> > 
> >
> > This seems redundant.  Isn't it automatically optional if 
> > valuesMinCount = 0?

Following attributes replace current use of type 'Multiplicity' - since this 
type does not seem very intutive. I think use of simply named attributes make 
it intutive.
 - isOptional, isMultiValued, valuesMinCount, valuesMaxCount, areValuesUnique


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java, line 61
> > 
> >
> > Why is this needed?  It seems like if 'valuesMaxCount' > 1, it is 
> > automatically multi-valued.

Please see my earlier commit. I think the use of explicit attributes like 
isMultiValued make it easier to read/understand.


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java, line 62
> > 
> >
> > Should valuesMinCount/valuesMaxCount be changed to 
> > lowerBound/upperBound?  Those seem like more intuitive names.

"bound" might mean the value of the attribute, ranther than the number of 
values in a multi-value attribute. Hence the names valuesMinCount and 
valuesMaxCount.


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java, line 64
> > 
> >
> > How is this different from isUnique?

isUnique is to specify if the attribute value should be unique across all 
entities.
areValuesUnique is specific to multi-values attributes (isMultiValued=true), to 
specify if the values of an attribute instance should be unique.


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasBaseModelObject.java, line 
> > 47
> > 
> >
> > It's not clear what "disabled" is and how it is different from 
> > "deleted".  I also tend to think that the status should be an internal 
> > attribute that is not exposed.  It seems like by default, users should be 
> > able to assume that any object that comes back from a query has not been 
> > deleted.  I know that is not currently the case though.  The query behavior 
> > really should not depend on whether hard or soft delete is being used, 
> > though, it should be transparent.  I would prefer to have a separate set of 
> > apis for managing the entity status where you can query for deleted objects 
> > and change their state back to ACTIVE if desired.

- removed "disabled".
- "status" field will be an internal field, which will only be set in 
create/delete calls. If explicit status change is necessary, we can add 
separate APIs.


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasBuiltInDatatypes.java, 
> > line 22
> > 
> >
> > It seems like constants like this should be declared once in the code 
> > and referred to everyplace else.  For example, AtlasClient.DataSet, 
> > AtlasClient.Process, BooleanType.name (which could be made public).

- moved ATLAS_TYPE_* constants to AtlasBaseTypeDefs
- added types Process, DataSet, Asset, Infrastructure, Referenceable to this 
built-in types. Yet to add classes for many of these though.


> On Sept. 19, 2016, 11:13 p.m., Jeff Hagelberg wrote:
> > common/src/main/java/org/apache/atlas/model/AtlasBuiltInDatatypes.java, 
> > line 33
> > 
> >
> > I'm not sure what this is.  Is it a data type?

This type is used to reference to another entity. I think it might be easier to 
continue with the current approach of directly using the entity-type name as 
the dataTypeName - like hive_table having 'dbName' attribute of type 
'hive_database'. I will remove 'objectid' type shortly.


- Madhan


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


On Sept. 19, 2016, 6:51 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 19, 2016, 6:51 p.m.)
> 
> 
> Review request for atlas.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/AT

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-19 Thread Jeff Hagelberg

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




common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java (line 55)


Generally, please add javadoc that describes the parameters and their 
intent.



common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java (line 58)


This seems redundant.  Isn't it automatically optional if valuesMinCount = 
0?



common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java (line 61)


Why is this needed?  It seems like if 'valuesMaxCount' > 1, it is 
automatically multi-valued.



common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java (line 62)


Should valuesMinCount/valuesMaxCount be changed to lowerBound/upperBound?  
Those seem like more intuitive names.



common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java (line 64)


How is this different from isUnique?



common/src/main/java/org/apache/atlas/model/AtlasBaseModelObject.java (line 45)


Could you change these to a java enumeration?  Most serialization 
frameworks have no trouble with enumerations.



common/src/main/java/org/apache/atlas/model/AtlasBaseModelObject.java (line 47)


It's not clear what "disabled" is and how it is different from "deleted".  
I also tend to think that the status should be an internal attribute that is 
not exposed.  It seems like by default, users should be able to assume that any 
object that comes back from a query has not been deleted.  I know that is not 
currently the case though.  The query behavior really should not depend on 
whether hard or soft delete is being used, though, it should be transparent.  I 
would prefer to have a separate set of apis for managing the entity status 
where you can query for deleted objects and change their state back to ACTIVE 
if desired.



common/src/main/java/org/apache/atlas/model/AtlasBuiltInDatatypes.java (line 22)


It seems like constants like this should be declared once in the code and 
referred to everyplace else.  For example, AtlasClient.DataSet, 
AtlasClient.Process, BooleanType.name (which could be made public).



common/src/main/java/org/apache/atlas/model/AtlasBuiltInDatatypes.java (line 33)


I'm not sure what this is.  Is it a data type?



common/src/main/java/org/apache/atlas/model/AtlasBuiltInDatatypes.java (line 34)


I think you are missing a few built-in types like dataset, etc.  The 
process type name also starts with a capital P.


- Jeff Hagelberg


On Sept. 19, 2016, 6:51 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 19, 2016, 6:51 p.m.)
> 
> 
> Review request for atlas.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> first-cut API for review
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasEntities.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasEntity.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasObjectId.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasProcess.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasStruct.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/instances/AtlasTrait.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasBaseTypeDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasEnumDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasTraitDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/types/AtlasTypeId.java 
> PRE-CREATION 
>   common/src/main

Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-19 Thread Madhan Neethiraj

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

(Updated Sept. 19, 2016, 6:51 p.m.)


Review request for atlas.


Changes
---

second draft version of the API. Classes under org.apache.atlas.model package 
are of the prime target for this review, as these classes capture the structure 
of the data being exchanged in the APIs. After reviewing this package, please 
look at the classes in org.apache.atlas.typesystem and the unit tests as well.

I will shortly update the review with details of the REST APIs.


Bugs: ATLAS-1171
https://issues.apache.org/jira/browse/ATLAS-1171


Repository: atlas


Description
---

first-cut API for review


Diffs (updated)
-

  common/pom.xml e3b6465 
  common/src/main/java/org/apache/atlas/api/AtlasEntities.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/AtlasTypes.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasEntity.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasObjectId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasProcess.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasStruct.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/instances/AtlasTrait.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasBaseTypeDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasEntityDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasEnumDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasStructDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasTraitDef.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/model/types/AtlasTypeId.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasArrayType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasBuiltInTypes.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasDataType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEntityType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasEnumType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasMapType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasStructType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasTraitType.java 
PRE-CREATION 
  common/src/main/java/org/apache/atlas/typesystem/AtlasTypeRegistry.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/ModelTestUtil.java PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/instances/TestAtlasEntity.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasEntityDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasEnumDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasStructDef.java 
PRE-CREATION 
  common/src/test/java/org/apache/atlas/model/types/TestAtlasTraitDef.java 
PRE-CREATION 
  pom.xml ac5b042 

Diff: https://reviews.apache.org/r/51896/diff/


Testing
---


Thanks,

Madhan Neethiraj



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-15 Thread Apoorv Naik

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




common/pom.xml (line 38)


Same as above



pom.xml (line 424)


This is a deprecated version and is only in maintenance mode. Thew newer 
versions can be found here

https://mvnrepository.com/artifact/com.fasterxml.jackson.core


https://mvnrepository.com/artifact/com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider


- Apoorv Naik


On Sept. 14, 2016, 5:33 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 14, 2016, 5:33 p.m.)
> 
> 
> Review request for atlas.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> first-cut API for review
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasEntities.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasBaseModelObject.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasBuiltInDatatypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasEntity.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasEnumDef.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasObjectId.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasProcess.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasStruct.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasTrait.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasTraitDef.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/TestAtlasEntity.java 
> PRE-CREATION 
>   pom.xml 95f28b0 
> 
> Diff: https://reviews.apache.org/r/51896/diff/
> 
> 
> Testing
> ---
> 
> 
> Thanks,
> 
> Madhan Neethiraj
> 
>



Re: Review Request 51896: ATLAS-1171: structured, high-level APIs

2016-09-15 Thread David Radley

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



Some thoughts on this change.

I notice AltasEntities is a new interface that you have introduced. I cannot 
see it being used anywhere. The methods in this and other interfaces all throw 
Exception, if this is an API interface then I think it needs specific 
Exceptions.
I think that an API change to help understanding needs to have comprehensive 
javadoc to explain the inputs and outputs - this is what I expected from the 
Jira description.
It looks like there is a only one test introduced. I think for an API change 
like this you should aim to add in comprehensive testing; normal paths, maximum 
and minimums of parameters (values and lengths), non-standard characters in any 
supplied strings and tests of the expected errors for error cases.

- David Radley


On Sept. 14, 2016, 5:33 p.m., Madhan Neethiraj wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51896/
> ---
> 
> (Updated Sept. 14, 2016, 5:33 p.m.)
> 
> 
> Review request for atlas.
> 
> 
> Bugs: ATLAS-1171
> https://issues.apache.org/jira/browse/ATLAS-1171
> 
> 
> Repository: atlas
> 
> 
> Description
> ---
> 
> first-cut API for review
> 
> 
> Diffs
> -
> 
>   common/pom.xml e3b6465 
>   common/src/main/java/org/apache/atlas/api/AtlasEntities.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/AtlasTypes.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/api/SearchFilter.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasAttributeDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasBaseModelObject.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasBuiltInDatatypes.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasEntity.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasEntityDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasEnumDef.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasObjectId.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasProcess.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasStruct.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasStructDef.java 
> PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasTrait.java PRE-CREATION 
>   common/src/main/java/org/apache/atlas/model/AtlasTraitDef.java PRE-CREATION 
>   common/src/test/java/org/apache/atlas/model/TestAtlasEntity.java 
> PRE-CREATION 
>   pom.xml 95f28b0 
> 
> Diff: https://reviews.apache.org/r/51896/diff/
> 
> 
> Testing
> ---
> 
> 
> Thanks,
> 
> Madhan Neethiraj
> 
>