}
	public void edit(final RoomClassification parentRoomClassification, final Integer code,			final MultiLanguageString name) {		final Set<RoomClassification> childRoomClassifications = parentRoomClassification == null ? getRootDomainObject()				.getRoomClassificationSet()				: parentRoomClassification.getChildRoomClassificationsSet();		final RoomClassification existingRoomClassification = findRoomClassificationByCode(				childRoomClassifications, parentRoomClassification, code);		if (existingRoomClassification != null && existingRoomClassification != this) {			throw new DomainException("error.room.classification.with.same.code.exists: " + code);		}		if (code == null) {			throw new NullPointerException("error.room.classification.cannot.have.null.code");		}		if (name == null) {			throw new NullPointerException("error.room.classification.cannot.have.null.name");		}		super.setParentRoomClassification(parentRoomClassification);		super.setCode(code);		super.setName(name);		absoluteCode = null;		presentationCode = null;		for (final RoomClassification childRoomClassification : getChildRoomClassificationsSet()) {			childRoomClassification.absoluteCode = null;			childRoomClassification.presentationCode = null;		}	}