class RelationshipDef extends TypeDef {

    @Override
    public boolean equals(Object objectToCompare)
    {
        if (this == objectToCompare)
        {
            return true;
        }
        if (!(objectToCompare instanceof RelationshipDef))
        {
            return false;
        }
        if (!super.equals(objectToCompare))
        {
            return false;
        }
        RelationshipDef that = (RelationshipDef) objectToCompare;
        return getPropagationRule() == that.getPropagationRule() &&
                Objects.equals(getEndDef1(), that.getEndDef1()) &&
                Objects.equals(getEndDef2(), that.getEndDef2());
    }

    public  RelationshipDef();
    public  RelationshipDef(TypeDefCategory category,
                           String          guid,
                           String          name,
                           long            version,
                           String          versionName);
    public  RelationshipDef(RelationshipDef templateTypeDef);

}