for (int i = 0; i < props.length; i++) {
PropertyState prop = props[i];
if (prop.getName().equals(NameConstants.JCR_FROZENUUID)) {
// special property
InternalValue value =
node.getPropertyValue(NameConstants.JCR_FROZENUUID);
// JCR-1803: The value should be a STRING, but older Jackrabbit
// versions (< 1.1, see JCR-487) used REFERENCE values. Since
// we do not automatically upgrade old content, we need to be
// ready to handle both types of values here.
if (value.getType() == PropertyType.STRING) {
frozenUUID = new NodeId(value.getString());
} else {
frozenUUID = value.getNodeId();
}
} else if (prop.getName().equals(NameConstants.JCR_FROZENPRIMARYTYPE)) {
// special property
frozenPrimaryType = node.getPropertyValue(NameConstants.JCR_FROZENPRIMARYTYPE).getName();
} else if (prop.getName().equals(NameConstants.JCR_FROZENMIXINTYPES)) {