atlas-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sarath Subramanian <sar...@apache.org>
Subject Re: Review Request 61085: ATLAS-1983: Add relationship cardinality validation
Date Wed, 16 Aug 2017 21:59:02 GMT

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



Consider refactoring the method to sue something like: 

public boolean vertexHasRelationshipWithType(AtlasVertex vertex, String relationshipTypeName)
{
        if (LOG.isDebugEnabled()) {
            LOG.debug("vertexHasRelationshipWithType vertex:" + vertex + ",relationshipType="
+ relationshipTypeName);
        }

        String relationshipEdgeLabel = getRelationshipLabel(getTypeName(vertex), relationshipTypeName);
        Iterator<AtlasEdge> iter     = graphHelper.getAdjacentEdgesByLabel(vertex, BOTH,
relationshipEdgeLabel);

        return (iter != null) ? iter.hasNext() : false;
    }

    private String getRelationshipLabel(String typeName, String relationshipTypeName) {
        AtlasRelationshipType   relationshipType = typeRegistry.getRelationshipTypeByName(relationshipTypeName);
        AtlasRelationshipDef    relationshipDef  = relationshipType.getRelationshipDef();
        AtlasEntityType         end1Type         = relationshipType.getEnd1Type();
        AtlasEntityType         end2Type         = relationshipType.getEnd2Type();
        AtlasAttribute          attribute        = null;

        if (StringUtils.equals(end1Type.getTypeName(), typeName)) {
            String attributeName = (relationshipDef.getEndDef1() != null) ? relationshipDef.getEndDef1().getName()
: null;

            attribute = end1Type.getAttribute(attributeName);

        } else if (StringUtils.equals(end2Type.getTypeName(), typeName)) {
            String attributeName = (relationshipDef.getEndDef2() != null) ? relationshipDef.getEndDef2().getName()
: null;

            attribute = end2Type.getAttribute(attributeName);
        }

        return (attribute != null) ? attribute.getRelationshipEdgeLabel() : null;
    }

- Sarath Subramanian


On July 24, 2017, 10:18 a.m., David Radley wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/61085/
> -----------------------------------------------------------
> 
> (Updated July 24, 2017, 10:18 a.m.)
> 
> 
> Review request for atlas, Madhan Neethiraj and Sarath Subramanian.
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> ATLAS-1983: Add relationship cardinality validation
> 
> 
> Diffs
> -----
> 
>   intg/src/main/java/org/apache/atlas/AtlasErrorCode.java b24f99f6f9337aa10f40e9f10024fe5a345c3540

>   intg/src/main/java/org/apache/atlas/model/typedef/AtlasRelationshipDef.java c17e875d10169753b76fcdb483e2ca85195104b2

>   repository/src/main/java/org/apache/atlas/repository/store/graph/v1/AtlasRelationshipStoreV1.java
49e08a070a803a36253b502666947ab92ffe39d3 
> 
> 
> Diff: https://reviews.apache.org/r/61085/diff/1/
> 
> 
> Testing
> -------
> 
> ran Junits 
> Successfully added one relationship, then added a second which resulted in the error.
> 
> 
> Thanks,
> 
> David Radley
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message