summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/property/PropertyDescriptionList.java
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2013-12-12 14:13:36 +0100
committerAndrew Branson <andrew.branson@cern.ch>2013-12-12 14:13:36 +0100
commit428d828ca640d1348979f9982d1c0bc0a489a3b4 (patch)
treea40b0f8fa46942f5e9d4c805a4df724ee5a5aa6b /src/main/java/com/c2kernel/property/PropertyDescriptionList.java
parentd5d65f58e69424d898f88e8304a49f147d4036f6 (diff)
Properties preserve and respect the PropertyDescription 'isMutable'
property. This setting prevents the WriteProperty predefined step from changing the property value when isMutable is false. WriteProperty also requires the selected property to already exist - they should be created either during Item instantiation or using AddC2KObject. LDAPPropertyManager prepends the Property name in its entries with ! if they are non mutable. Various places around the kernel that create properties now set the mutable field. Fixes #150
Diffstat (limited to 'src/main/java/com/c2kernel/property/PropertyDescriptionList.java')
-rw-r--r--src/main/java/com/c2kernel/property/PropertyDescriptionList.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main/java/com/c2kernel/property/PropertyDescriptionList.java b/src/main/java/com/c2kernel/property/PropertyDescriptionList.java
index a6c68e2..ed93008 100644
--- a/src/main/java/com/c2kernel/property/PropertyDescriptionList.java
+++ b/src/main/java/com/c2kernel/property/PropertyDescriptionList.java
@@ -55,7 +55,8 @@ public class PropertyDescriptionList extends CastorArrayList<PropertyDescription
PropertyDescription pd = list.get(i);
String propName = pd.getName();
String propVal = pd.getDefaultValue();
- props.list.add( new Property(propName, propVal));
+ boolean isMutable = pd.getIsMutable();
+ props.list.add( new Property(propName, propVal, isMutable));
}
return props;
}