valueCache = value;
isValueCached = true;
if (converter != null) {
if (!converter.supports(value)) {
throw new JbpmException("the converter '"
+ converter.getClass().getName()
+ "' in variable instance '"
+ this.getClass().getName()
+ "' does not support values of type '"
+ value.getClass().getName()
+ "'. to change the type of a variable, you have to delete it first");
}
value = converter.convert(value);
}
if ((value != null) && (!this.isStorable(value))) {
throw new JbpmException("variable instance '"
+ this.getClass().getName()
+ "' does not support values of type '"
+ value.getClass().getName()
+ "'. to change the type of a variable, you have to delete it first");
}