示例#1
0
 /**
  * Comme <code>require</code>, mais valide en profondeur les <code>DataObject</code>s.
  *
  * @param error true si l'absence est une erreur, false si c'est juste un warning.
  * @param source L'objet source.
  * @param property Le nom de la propriété à vérifier.
  * @return true ssi la propriété est définie et n'a pas d'erreurs.
  */
 protected boolean requireProperty(boolean error, DataObject source, String property) {
   Object value = source.readProperty(property);
   String propertyName = propertyName(source, property);
   if (require(error, value, propertyName)) {
     if (value instanceof DataObject) {
       return subValidate(propertyName, (DataObject) value);
     } else {
       return true;
     }
   } else {
     return false;
   }
 }
示例#2
0
        @Override
        protected Object buildValue(ConstRef ref) {
          Class<?> clazz = ref.clazz;
          String nom = ref.nom;

          DataContext dc = DataContext.createDataContext();
          String constEntity = "Const" + clazz.getSimpleName();
          if (dc.getEntityResolver().getObjEntity(constEntity) == null) {
            throw new RuntimeException("Pas de constantes de type " + clazz.getName());
          }
          DataObject result = CommonQueries.unique(dc, constEntity, "nom", nom);
          if (result == null) {
            result = dc.createAndRegisterNewObject(constEntity);
            result.writeProperty("nom", nom);
            result.writeProperty("libelle", nom);
            dc.commitChanges();
            // throw new RuntimeException("Pas de constante nommée " + nom
            // + " (type:" + clazz.getName() + ")");
          }
          return result.readProperty("valeur");
        }
示例#3
0
 protected boolean checkPeriode(DataObject object, String debut, String fin) {
   return checkPeriode(
       object, //
       (Date) object.readProperty(debut), //
       (Date) object.readProperty(fin));
 }