public void deploy(ReflectionFactory platform) {
   platform.addEditorKit(QueriesEditorKit.ID);
   platform.addOperationFactory(
       QueriesLanguageKit.URI,
       ContentAssistOperation.ID,
       new IVisitorFactory() {
         public IVisitor create(IOperation operation, int stage) {
           return new QueriesContentAssistVisitor();
         }
       });
 }
 public void deploy(ReflectionFactory platform) {
   platform.addLanguageKit(new ModelsLanguageKit());
   platform.addOperationFactory(
       ModelsLanguageKit.URI,
       GenericBuilderAdapterOperation.ID,
       new IBuilderFactory() {
         public IBuilder create(IBuilder strategy, IEntityContext entityContext) {
           return new ModelsGenericBuilderAdapter((IModelsBuilder) strategy, entityContext);
         }
       });
   platform.addOperationFactory(
       ModelsLanguageKit.URI,
       SpecificBuilderAdapterOperation.ID,
       new IBuilderFactory() {
         public IBuilder create(IBuilder strategy, IEntityContext entityContext) {
           return new ModelsSpecificBuilderAdapter(strategy, entityContext);
         }
       });
   platform.addOperationFactory(
       ModelsLanguageKit.URI,
       ExportTexOperation.ID,
       new IVisitorFactory() {
         public IVisitor create(IOperation operation, int stage) {
           return new TeXGeneratorVisitor((ExportTexOperation) operation);
         }
       });
   platform.addOperationFactory(
       ModelsLanguageKit.URI,
       PrettyPrinterOperation.ID,
       new IVisitorFactory() {
         public IVisitor create(IOperation operation, int stage) {
           return new ModelsPrettyPrinterVisitor((PrettyPrinterOperation) operation);
         }
       });
   platform.addOperationFactory(
       ModelsLanguageKit.URI,
       ValidatorOperation.ID,
       new IVisitorFactory() {
         public IVisitor create(IOperation operation, int stage) {
           return new ModelsValidatorVisitor();
         }
       });
   platform.addOperationFactory(
       ModelsLanguageKit.URI,
       InterpreterOperation.ID,
       new IVisitorFactory() {
         public IVisitor create(IOperation operation, int stage) {
           if (stage == 0) return new ModelsInterpreterVisitor();
           else return null;
         }
       });
   platform.addOperationFactory(
       ModelsLanguageKit.URI,
       NormalizerOperation.ID,
       new IVisitorFactory() {
         public IVisitor create(IOperation operation, int stage) {
           return new ModelsNormalizerVisitor();
         }
       });
 }
 public void deploy(ReflectionFactory platform) {
   platform.addLanguageKit(new FirstOrderLogicLanguageKit());
   platform.addOperationFactory(
       FirstOrderLogicLanguageKit.URI,
       GenericBuilderAdapterOperation.ID,
       new IBuilderFactory() {
         public IBuilder create(IBuilder strategy, IEntityContext entityContext) {
           return new FirstOrderLogicGenericBuilderAdapter(
               (IFirstOrderLogicBuilder) strategy, entityContext);
         }
       });
   platform.addOperationFactory(
       FirstOrderLogicLanguageKit.URI,
       SpecificBuilderAdapterOperation.ID,
       new IBuilderFactory() {
         public IBuilder create(IBuilder strategy, IEntityContext entityContext) {
           return new FirstOrderLogicSpecificBuilderAdapter(strategy, entityContext);
         }
       });
   platform.addEditorKit(FirstOrderLogicTextualEditorKit.ID);
 }
  public void deploy(ReflectionFactory platform) {
    platform.addLanguageKit(new ActionsLanguageKit());
    platform.addOperationFactory(
        ActionsLanguageKit.URI,
        GenericBuilderAdapterOperation.ID,
        new IBuilderFactory() {
          public IBuilder create(IBuilder strategy, IEntityContext entityContext) {
            return new ActionsGenericBuilderAdapter((IActionsBuilder) strategy, entityContext);
          }
        });
    platform.addOperationFactory(
        ActionsLanguageKit.URI,
        SpecificBuilderAdapterOperation.ID,
        new IBuilderFactory() {
          public IBuilder create(IBuilder strategy, IEntityContext entityContext) {
            return new ActionsSpecificBuilderAdapter(strategy, entityContext);
          }
        });

    platform.addOperationFactory(
        ActionsLanguageKit.URI,
        InterpreterOperation.ID,
        new IVisitorFactory() {
          public IVisitor create(IOperation operation, int stage) {
            if (stage == 0) return new ActionsInterpreterVisitor();
            else return null;
          }
        });
    platform.addOperationFactory(
        ActionsLanguageKit.URI,
        DynamicCompilerOperation.ID,
        new IVisitorFactory() {
          public IVisitor create(IOperation operation, int stage) {
            if (stage == 0) return new ActionsDynamicCompilerVisitor();
            else return null;
          }
        });
  }
  public static IPersistenceKit calculateInheritedPersistence(
      IEntity model, IPersistenceKit defaultPersistenceKit) {
    IEntityIterator<IEntity> iterator =
        IteratorFactory.scannerIterator(IteratorFactory.ancestorOrSelfIterator())
            .withPattern(
                GenericTraversalFactory.instance.one(
                    GenericMatcherFactory.instance.isFragmentMatcher(),
                    GenericMatcherFactory.instance.hasKindMatcher(EntityKinds.COMPOSITE)));

    iterator.reset(model);
    while (iterator.hasNext()) {
      String persistenceKitId = getPersistenceKitId(iterator.next());
      if (persistenceKitId != null) return ReflectionFactory.getPersistenceKit(persistenceKitId);
    }

    return defaultPersistenceKit;
  }
 public void undeploy(ReflectionFactory platform) {
   platform.removeLanguageKit(FirstOrderLogicLanguageKit.URI);
 }
 public void undeploy(ReflectionFactory platform) {
   platform.removeLanguageKit(ModelsLanguageKit.URI);
 }
 public void undeploy(ReflectionFactory platform) {
   platform.removeEditorKit(TableEditorKit.ID);
 }
 public void deploy(ReflectionFactory platform) {
   platform.addEditorKit(TableEditorKit.ID);
 }
 public void deploy(ReflectionFactory platform) {
   ReflectionFactory.setDefaultPersistenceKit(XmlBuilderPersistenceKit.instance());
 }