/*
* Licensed Materials - Property of Rogue Wave Software, Inc.
* © Copyright Rogue Wave Software, Inc. 2014, 2017
* © Copyright IBM Corp. 2009, 2014
* © Copyright ILOG 1996, 2009
* All Rights Reserved.
*
* Note to U.S. Government Users Restricted Rights:
* The Software and Documentation were developed at private expense and
* are "Commercial Items" as that term is defined at 48 CFR 2.101,
* consisting of "Commercial Computer Software" and
* "Commercial Computer Software Documentation", as such terms are
* used in 48 CFR 12.212 or 48 CFR 227.7202-1 through 227.7202-4,
* as applicable.
*/
package demo.editing;
import ilog.views.diagrammer.IlvDiagrammer;
import ilog.views.diagrammer.faces.dhtml.component.IlvFacesDiagrammerPropertyAccessor;
/**
* This property accessor is a simple example of one of its usage.
* <p>
* In this subclass we filter some properties.
* </p>
*/
public class PropertyAccessor extends IlvFacesDiagrammerPropertyAccessor {
/**
* Subclassed to entirely filter the SDM properties.
*/
Override
protected boolean acceptProperty(IlvDiagrammer diagrammer, Object object, String propertyName) {
return propertyName.indexOf("sdm:") == -1;
}
/**
* Forbid the modification of the CSSclass property (but is readable and
* settable if no value exist).
*/
Override
protected boolean acceptSetProperty(IlvDiagrammer diagrammer, Object object, String propertyName,
Object propertyValue) {
if (propertyName.equals("CSSclass")) {
return (diagrammer.getObjectProperty(object, propertyName) == null);
} else
return super.acceptSetProperty(diagrammer, object, propertyName, propertyValue);
}
}