Package org.apache.tuscany.das.rdb.config.wrapper

Examples of org.apache.tuscany.das.rdb.config.wrapper.RelationshipWrapper


          fields.add(p);
      } else {
        if ( obj.isSet(p) ) {
          Relationship relationship = config.getRelationshipByReference(p);
          if ( p.getOpposite().isMany() || (hasState(config, relationship, obj))) {             
            RelationshipWrapper r = new RelationshipWrapper(
              relationship);
            Iterator keys = r.getForeignKeys().iterator();
            while (keys.hasNext()) {
              String key = (String) keys.next();
              Property keyProp = obj.getType().getProperty(key);
              fields.add(keyProp);
            }
View Full Code Here


  private boolean hasState(MappingWrapper config, Relationship rel, DataObject changedObject) {             
     
      if ( !rel.isMany()) {
        Table t = config.getTableByPropertyName(changedObject.getType().getName());
        TableWrapper tw = new TableWrapper(t);
        RelationshipWrapper rw = new RelationshipWrapper(rel);
        if (( rel.getForeignKeyTable().equals(t.getName())) &&
            ( Collections.disjoint(tw.getPrimaryKeyProperties(),rw.getForeignKeys()) ))
          return true;     
      }
       
    return false;
  }
View Full Code Here

     
      if ( !rel.isMany()) {
        // This is a one-one relationship
        Table t = mapping.getTableByPropertyName(changedObject.getType().getName());
        TableWrapper tw = new TableWrapper(t);
        RelationshipWrapper rw = new RelationshipWrapper(rel);
        if (( rel.getForeignKeyTable().equals(t.getName())) &&
            ( Collections.disjoint(tw.getPrimaryKeyProperties(),rw.getForeignKeys()) ))
          return true;
       
      }
   
    }
View Full Code Here

      if (setting.getProperty().getType().isDataType()) {
        changes.add(setting.getProperty());
      } else  {
        Property ref = setting.getProperty();
        if ( !ref.isMany() ) {                       
          RelationshipWrapper r = new RelationshipWrapper(mapping.getRelationshipByReference(ref));
         
          Iterator keys = r.getForeignKeys().iterator();
          while ( keys.hasNext()) {
            String key = (String) keys.next();
            Property p = obj.getType().getProperty(key);
            changes.add(p);
          }
View Full Code Here

            if (setting.getProperty().getType().isDataType()) {
                changes.add(setting.getProperty());
            } else {
                Property ref = setting.getProperty();
                if (!ref.isMany()) {
                    RelationshipWrapper r = new RelationshipWrapper(mapping.getRelationshipByReference(ref));

                    Iterator keys = r.getForeignKeys().iterator();
                    while (keys.hasNext()) {
                        String key = (String) keys.next();
                        Property p = obj.getType().getProperty(key);
                        changes.add(p);
                    }
View Full Code Here

            } else {
                if (obj.isSet(p)) {
                    Relationship relationship = config.getRelationshipByReference(p);
                    if ((p.getOpposite() != null && p.getOpposite().isMany())
                            || (hasState(config, relationship, obj))) {
                        RelationshipWrapper r = new RelationshipWrapper(relationship);
                        Iterator keys = r.getForeignKeys().iterator();
                        while (keys.hasNext()) {
                            String key = (String) keys.next();
                            Property keyProp = obj.getType().getProperty(key);
                            fields.add(keyProp);
                        }
View Full Code Here

    private boolean hasState(MappingWrapper config, Relationship rel, DataObject changedObject) {

        if (!rel.isMany()) {
            Table t = config.getTableByTypeName(changedObject.getType().getName());
            TableWrapper tw = new TableWrapper(t);
            RelationshipWrapper rw = new RelationshipWrapper(rel);
            if ((rel.getForeignKeyTable().equals(t.getTableName()))
                    && (Collections.disjoint(tw.getPrimaryKeyProperties(), rw.getForeignKeys()))) {
                return true;
            }
        }

        return false;
View Full Code Here

                throw new RuntimeException("Can not modify a one to one relationship that is key restricted");
            }
            // This is a one-one relationship
            Table t = mapping.getTableByTypeName(changedObject.getType().getName());
            TableWrapper tw = new TableWrapper(t);
            RelationshipWrapper rw = new RelationshipWrapper(rel);
            if ((rel.getForeignKeyTable().equals(t.getTableName()))
                    && (Collections.disjoint(tw.getPrimaryKeyProperties(), rw.getForeignKeys()))) {
                return true;
            }

        }
View Full Code Here

                   throw new RuntimeException("Foreign key properties should not be set when the corresponding relationship has changed");
               }
            } else {
                Property ref = setting.getProperty();
                if (!ref.isMany()) {
                    RelationshipWrapper r = new RelationshipWrapper(config.getRelationshipByReference(ref));

                    Iterator keys = r.getForeignKeys().iterator();
                    while (keys.hasNext()) {
                        String key = (String) keys.next();
                        String keyProperty = config.getColumnPropertyName(tw.getTableName(), key);
                        Property keyProp = obj.getType().getProperty(keyProperty);
                        if ( keyProp == null )
View Full Code Here

            } else {
                if (obj.isSet(p)) {
                    Relationship relationship = config.getRelationshipByReference(p);
                    if ((p.getOpposite() != null && p.getOpposite().isMany())
                            || (hasState(tw, relationship, obj))) {
                        RelationshipWrapper r = new RelationshipWrapper(relationship);
                        Iterator keys = r.getForeignKeys().iterator();
                        while (keys.hasNext()) {
                            String key = (String) keys.next();
                            String keyProperty = config.getColumnPropertyName(tw.getTableName(), key);
                            Property keyProp = obj.getType().getProperty(keyProperty);
                            if ( keyProp == null )
View Full Code Here

TOP

Related Classes of org.apache.tuscany.das.rdb.config.wrapper.RelationshipWrapper

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.