Subversion Repository Public Repository

litesoft

Diff Revisions 6 vs 17 for /trunk/Java/KeyHole/src/org/litesoft/aokeyhole/objects/ObjectMetaData.java

Diff revisions: vs.
  @@ -37,25 +37,27 @@
37 37 mParent = new ObjectProxy( this, "Parent" );
38 38 }
39 39
40 + @Override
40 41 public MetaDataOwnerManager<ObjectMetaData, AttributeMetaData> getOwnerManager()
41 42 {
42 43 return mOwnerManager;
43 44 }
44 45
45 - @SuppressWarnings({"UnusedDeclaration"})
46 - public String[] getPotentialRelateToObjectNamesFor( AttributeSet pAttributeSet )
46 + public String[] getPotentialRelateToObjectNamesFor( AttributeSet pAttributeSet, boolean pVirtual )
47 47 {
48 - // todo: ...
49 48 ObjectMetaData[] zSortedObjectMetaDatas = getSystemMetaData().getSortedObjectMetaDatas();
50 49 List<String> rv = new ArrayList<String>( zSortedObjectMetaDatas.length );
51 50 for ( ObjectMetaData zMD : zSortedObjectMetaDatas )
52 51 {
53 - // if ( zMD.isEditable() )
54 - rv.add( zMD.getName() );
52 + if ( pAttributeSet.isAcceptableAsRelatedTo( zMD, pVirtual ) )
53 + {
54 + rv.add( zMD.getName() );
55 + }
55 56 }
56 57 return rv.toArray( new String[rv.size()] );
57 58 }
58 59
60 + @Override
59 61 public int compareTo( ObjectMetaData them )
60 62 {
61 63 int zDiff = this.getObjectSet().getSortIndex() - them.getObjectSet().getSortIndex();
  @@ -138,7 +140,7 @@
138 140 {
139 141 verifyEditability();
140 142
141 - add( mAttributeFactory.createAttributeMetaDataSimple( getObjectSet(), Mode.New, isEditable(), A_CommonPairedToOne.TYPE, false, "Varies" ) );
143 + add( mAttributeFactory.createAttributeMetaDataRelatedPersisted( getObjectSet(), Mode.New, isEditable(), A_CommonPairedToOne.TYPE, "Varies" ) );
142 144 }
143 145
144 146 public void createAttributeMetaDataPairedToOne()
  @@ -175,11 +177,7 @@
175 177
176 178 if ( pType.getFAT().isRelated() )
177 179 {
178 - if ( pVirtual )
179 - {
180 - return add( mAttributeFactory.createAttributeMetaDataRelatedVirtual( getObjectSet(), Mode.New, isEditable(), pType, null ) );
181 - }
182 - return add( mAttributeFactory.createAttributeMetaDataRelatedPersisted( getObjectSet(), Mode.New, isEditable(), pType, null ) );
180 + return add( createRelatedAttributeMetaData( pType, pVirtual ) );
183 181 }
184 182 if ( pType instanceof AbstractValidOptionsAttributeTypeSimple )
185 183 {
  @@ -189,6 +187,15 @@
189 187 return add( mAttributeFactory.createAttributeMetaDataSimple( getObjectSet(), Mode.New, isEditable(), pType, pVirtual, null ) );
190 188 }
191 189
190 + private AttributeMetaData createRelatedAttributeMetaData( AttributeType pType, boolean pVirtual )
191 + {
192 + if ( pVirtual )
193 + {
194 + return mAttributeFactory.createAttributeMetaDataRelatedVirtual( getObjectSet(), Mode.New, isEditable(), pType, null );
195 + }
196 + return mAttributeFactory.createAttributeMetaDataRelatedPersisted( getObjectSet(), Mode.New, isEditable(), pType, null );
197 + }
198 +
192 199 public void remove( AttributeMetaData pAMD )
193 200 {
194 201 getOwnerManager().remove( pAMD );
  @@ -307,6 +314,7 @@
307 314 return mPropertyManager.updatePropertyValue( pName, pValue );
308 315 }
309 316
317 + @Override
310 318 public void setRehydrated()
311 319 {
312 320 if ( getOwnerManager().available( AttributeMetaData.ID_NAME ) && mObjectSet.requireID() )
  @@ -319,6 +327,7 @@
319 327 super.setRehydrated();
320 328 }
321 329
330 + @Override
322 331 public String validatePersistable()
323 332 {
324 333 String error = super.validatePersistable();
  @@ -442,6 +451,7 @@
442 451 return shrunk;
443 452 }
444 453
454 + @Override
445 455 public void addLines( List<String> pCollector, int pIndent )
446 456 {
447 457 pCollector.add( "" );
  @@ -546,6 +556,7 @@
546 556 return getOwner();
547 557 }
548 558
559 + @Override
549 560 public void setUpView( NameValuesComponent pNameValuesComponent )
550 561 {
551 562 pNameValuesComponent.setValue( ObjectNames.NAME, getName() );
  @@ -571,6 +582,7 @@
571 582 /**
572 583 * @return null or Error
573 584 */
585 + @Override
574 586 public String saveFromView( NameValuesComponent pNameValuesComponent )
575 587 {
576 588 ChangeHandler zChanges = new ChangeHandler();
  @@ -670,6 +682,7 @@
670 682 mNewName = pNewName;
671 683 }
672 684
685 + @Override
673 686 public void commitChange()
674 687 {
675 688 mCaller.setName( mNewName );
  @@ -697,6 +710,7 @@
697 710 mNewNotes = pNewNotes;
698 711 }
699 712
713 + @Override
700 714 public void commitChange()
701 715 {
702 716 mCaller.setNotes( mNewNotes );
  @@ -717,6 +731,7 @@
717 731 mNewParent = pNewParent;
718 732 }
719 733
734 + @Override
720 735 public void commitChange()
721 736 {
722 737 setParentName( mNewParent );