public void deleteUuidDefByContPrevIdx( CFSecurityAuthorization Authorization, CFBamValueByContPrevIdxKey argKey) { final String S_ProcName = "deleteUuidDefByContPrevIdx"; CFBamUuidDefBuff cur; LinkedList<CFBamUuidDefBuff> matchSet = new LinkedList<CFBamUuidDefBuff>(); Iterator<CFBamUuidDefBuff> values = dictByPKey.values().iterator(); while (values.hasNext()) { cur = values.next(); if (argKey.equals(cur)) { matchSet.add(cur); } } Iterator<CFBamUuidDefBuff> iterMatch = matchSet.iterator(); while (iterMatch.hasNext()) { cur = iterMatch.next(); String subClassCode = cur.getClassCode(); if ("UIDD".equals(subClassCode)) { schema.getTableUuidDef().deleteUuidDef(Authorization, cur); } else if ("UIDC".equals(subClassCode)) { schema.getTableUuidCol().deleteUuidCol(Authorization, (CFBamUuidColBuff) cur); } else if ("UIDT".equals(subClassCode)) { schema.getTableUuidType().deleteUuidType(Authorization, (CFBamUuidTypeBuff) cur); } else if ("IGUU".equals(subClassCode)) { schema.getTableUuidGen().deleteUuidGen(Authorization, (CFBamUuidGenBuff) cur); } else { throw CFLib.getDefaultExceptionFactory() .newUnsupportedClassException( getClass(), S_ProcName, "subClassCode", cur, "Instance of or subclass of UuidDef must not be \"" + subClassCode + "\""); } } }
public void deleteUuidDef(CFSecurityAuthorization Authorization, CFBamUuidDefBuff Buff) { final String S_ProcName = "CFBamRamUuidDefTable.deleteUuidDef() "; CFBamValuePKey pkey = schema.getFactoryValue().newPKey(); pkey.setRequiredTenantId(Buff.getRequiredTenantId()); pkey.setRequiredId(Buff.getRequiredId()); CFBamUuidDefBuff existing = dictByPKey.get(pkey); if (existing == null) { return; } if (existing.getRequiredRevision() != Buff.getRequiredRevision()) { throw CFLib.getDefaultExceptionFactory() .newCollisionDetectedException(getClass(), "deleteUuidDef", pkey); } // Validate reverse foreign keys if (schema .getTableUuidCol() .readDerivedByIdIdx( Authorization, existing.getRequiredTenantId(), existing.getRequiredId()) != null) { throw CFLib.getDefaultExceptionFactory() .newDependentsDetectedException( getClass(), "deleteUuidDef", "Superclass", "SuperClass", "UuidCol", pkey); } if (schema .getTableUuidType() .readDerivedByIdIdx( Authorization, existing.getRequiredTenantId(), existing.getRequiredId()) != null) { throw CFLib.getDefaultExceptionFactory() .newDependentsDetectedException( getClass(), "deleteUuidDef", "Superclass", "SuperClass", "UuidType", pkey); } // Delete is valid Map<CFBamValuePKey, CFBamUuidDefBuff> subdict; dictByPKey.remove(pkey); schema.getTableAtom().deleteAtom(Authorization, Buff); }