system/src/sc/lang/java/ModelUtil.java
public static boolean isBindable(LayeredSystem system, Object parentType, String propName) {
      // Search the class hierarchy for all TypeSettings annotations and if any of them declare this property bindable at the type level
      // we treat it as bindable.
      ArrayList<Object> typeSetAnnots = ModelUtil.getAllInheritedAnnotations(system, parentType, "sc.obj.TypeSettings", false, null, false);
      if (typeSetAnnots != null) {
         for (Object typeSetAnnot:typeSetAnnots) {
            String[] bindablePropNames = (String[]) ModelUtil.getAnnotationValue(typeSetAnnot, "bindableProps");
            if (bindablePropNames != null) {
               for (String bp:bindablePropNames)
                  if (bp.equals(propName))
                     return true;
            }

         }
      }
      return false;
   }
/** Returns true if this property is marked as bindable as a type-level annotation.  Use isBindable(Object propObj) to check for annotations on the property object itself. */
Returns true if this property is marked as bindable as a type-level annotation.  Use isBindable(Object propObj) to check for annotations on the property object itself.
Returns true if this property is marked as bindable as a type - level annotation . Use isBindable ( Object propObj ) to check for annotations on the property object itself .
public static boolean isBindable(LayeredSystem system, Object parentType, String propName) {
      ArrayList<Object> typeSetAnnots = ModelUtil.getAllInheritedAnnotations(system, parentType, "sc.obj.TypeSettings", false, null, false);
      if (typeSetAnnots != null) {
         for (Object typeSetAnnot:typeSetAnnots) {
            String[] bindablePropNames = (String[]) ModelUtil.getAnnotationValue(typeSetAnnot, "bindableProps");
            if (bindablePropNames != null) {
               for (String bp:bindablePropNames)
                  if (bp.equals(propName))
                     return true;
            }
         }
      }
      return false;
   }
public static boolean isBindable ( LayeredSystem system , Object parentType , String propName ) { ArrayList < Object > typeSetAnnots = ModelUtil . getAllInheritedAnnotations ( system , parentType , "sc.obj.TypeSettings" , false , null , false ) ; if ( typeSetAnnots != null ) { for ( Object typeSetAnnot : typeSetAnnots ) { String [ ] bindablePropNames = ( String [ ] ) ModelUtil . getAnnotationValue ( typeSetAnnot , "bindableProps" ) ; if ( bindablePropNames != null ) { for ( String bp : bindablePropNames ) if ( bp . equals ( propName ) ) return true ; } } } return false ; }
Returns true if this property is marked as bindable as a type-level annotation.
Returns true if this property is marked as bindable as a type - level annotation .
// Search the class hierarchy for all TypeSettings annotations and if any of them declare this property bindable at the type level // we treat it as bindable.