/** * Returns the SQL fragment string needed by insert or update statements within insert or update * method of sub-classes. This is done to avoid code duplication. */ protected String getSQLStatementFragment(Object object) throws RegistryException { // object must be an ObjectRef for an objects affected by parent event ObjectRefType affectedObject = (ObjectRefType) object; String stmtFragment = null; String id = affectedObject.getId(); String home = affectedObject.getHome(); if (home != null) { home = "'" + home + "'"; } String eventId = ((AuditableEventType) parent).getId(); if (action == DAO_ACTION_INSERT) { stmtFragment = "INSERT INTO AffectedObject VALUES(" + " '" + id + "', " + home + ", '" + eventId + "' ) "; } else if (action == DAO_ACTION_UPDATE) { throw new RegistryException( ServerResourceBundle.getInstance().getString("message.cannotUpdateComposedObject")); } else if (action == DAO_ACTION_DELETE) { stmtFragment = super.getSQLStatementFragment(object); } return stmtFragment; }