private void deletePropertyChain(long nextProp) {
   PropertyStore propStore = getPropertyStore();
   while (nextProp != Record.NO_NEXT_PROPERTY.intValue()) {
     PropertyRecord propRecord = propStore.getRecord(nextProp);
     /*
      *  The only reason to loop over the blocks is to handle the dynamic
      *  records that possibly hang under them. Otherwise, we could just
      *  set the property record not in use and be done with it. The
      *  residue of the convenience is that we do not remove individual
      *  property blocks - we just mark the whole record as !inUse.
      */
     for (PropertyBlock propBlock : propRecord.getPropertyBlocks()) {
       propStore.ensureHeavy(propBlock);
       for (DynamicRecord rec : propBlock.getValueRecords()) {
         rec.setInUse(false);
         propRecord.addDeletedRecord(rec);
       }
     }
     propRecord.setInUse(false);
     nextProp = propRecord.getNextProp();
     propStore.updateRecord(propRecord);
   }
 }
Exemple #2
0
 public Object getArrayFor(PropertyBlock propertyBlock) {
   ensureHeavy(propertyBlock);
   return getArrayFor(propertyBlock.getValueRecords());
 }
Exemple #3
0
 public String getStringFor(PropertyBlock propertyBlock) {
   ensureHeavy(propertyBlock);
   return getStringFor(propertyBlock.getValueRecords());
 }