Package org.jostraca.util

Examples of org.jostraca.util.PropertySet


  public BasicTemplateElementProcessor
    ( TemplateActionHandler pTemplateActionHandler,
      PropertySet           pPropertySet )
  {
    TemplateActionHandler tah = (TemplateActionHandler) Internal.null_arg( pTemplateActionHandler );
    PropertySet           ps  = (PropertySet)           Internal.null_arg( pPropertySet );

    iUnitList                     = new BasicUnitList();
    iTemplateActionHandler        = tah;
    iPropertySet                  = ps;
    iTextualTransformManagerTable = new TextualTransformManagerTable( iPropertySet );
View Full Code Here




  public void setByProperty( PropertySet pPropertySet ) throws TemplateScriptException {
    String MN = ".defineByProperty: ";
    PropertySet ps = (PropertySet) Internal.null_arg( pPropertySet );

    // if undefined, use existing value
    if( ps.has( Property.main_TemplateScript ) ) {
      setByName( ps.get( Property.main_TemplateScript ) );
    }
  }
View Full Code Here

   
    return ps;
  }

  private static final PropertySet makeLangPS_jython() {
    PropertySet ps = new PropertySet();
   
    ps.set( "lang.InsertPrefix", "_py_insert(self, " );
   
    ps.set( "main.CodeWriterFormat", "BasicJythonWriterFormat.jwf" );
   
    ps.set( "main.ExecuteCodeWriter", "yes" );
   
    ps.set( "lang.section.all.Modifiers", "PythonIndenter, BlockIndenter" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.InternalJythonController" );
   
    ps.set( "python.nonStatementLineRegExp", "^[ \t]*(#.*)?$" );
   
    ps.set( "lang.NameValueList.nameQuote", "\"" );
   
    ps.set( "lang.TemplateScriptTransforms", "AppendNewLineTransform" );
   
    ps.set( "python.controlFlowRegExp", ":[ \t]*(#.*)?$" );
   
    ps.set( "lang.InsertSuffix", " )" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "main.CodeWriterSuffix", ".py" );
   
    ps.set( "main.ExternalCompilerOptions", "" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicCodeWriterController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "lang.FalseString", "0" );
   
    ps.set( "lang.NameValueList.pairSeparator", "," );
   
    ps.set( "lang.StringEscapeTransform", "CStringEscapeTransform" );
   
    ps.set( "main.ExternalController", "jython" );
   
    ps.set( "jython.fixWindowsBatchFileName", "yes" );
   
    ps.set( "lang.TrueString", "1" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "lang.CodeWriterTransforms", "" );
   
    ps.set( "python.standardIndent", "  " );
   
    ps.set( "main.ExternalCompiler", "" );
   
    ps.set( "python.tabAsSpaces", "        " );
   
    ps.set( "lang.NameValueList.itemSeparator", ":" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Controller" );
   
    ps.set( "lang.NameValueList.valueQuote", "\"" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicCodeWriterCompiler" );
   
    ps.set( "main.FullMetaPath", "yes" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    return ps;
  }
View Full Code Here

   
    return ps;
  }

  private static final PropertySet makeLangPS_javascript() {
    PropertySet ps = new PropertySet();
   
    ps.set( "main.process.Controller", "org.jostraca.process.JavaScriptController" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "lang.StringEscapeTransform", "JavaStringEscapeTransform" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Controller" );
   
    ps.set( "lang.TrueString", "true" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "lang.InsertPrefix", "self._insert( " );
   
    ps.set( "main.CodeWriterFormat", "BasicJavaScriptWriterFormat.jwf" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.CodeWriterSuffix", ".js" );
   
    ps.set( "main.process.Compiler", "org.jostraca.process.GenericCompiler" );
   
    ps.set( "lang.FalseString", "false" );
   
    ps.set( "main.SaveCodeWriter", "no" );
   
    return ps;
  }
View Full Code Here

    System.out.println( "ref:"+pRefPS );
  }


  protected boolean confirmPropertySet( String pTestRoot, PropertySet pReferencePS ) {
    PropertySet testps = new PropertySet();
    testps.load( new File( getTestFolder(), PREFIX_RESULT + pTestRoot + DOT + TXT ) );
    boolean test = testps.equals( pReferencePS );

    if( !test ) {
      displayPropertySets( testps, pReferencePS );
    }
View Full Code Here

      throw new JostracaException( "Argument pConfigFolder='"+pConfigFolder.getAbsolutePath()+"' specifies a folder that does not have sufficient read permissions" );
    }

    iService        = new Service();
    iConfigFolder   = pConfigFolder;
    iCmdPropertySet = new PropertySet();
  }
View Full Code Here

    boolean      argumentsAreTemplateNames = false;
    boolean      usingTemplateListFile     = false;
    StringBuffer codeWriterOptions         = new StringBuffer();
    boolean      usingDefaultConf          = true; // unless -f is found
    PropertySet  cmdLineOptions            = new PropertySet();
    String       configPath                = null;
    ArrayList    additionalConfigFiles     = new ArrayList();
    ArrayList    cmdlinetemplates          = new ArrayList();


    // parse command line
    Getopt g = new Getopt( CMD_NAME, pArgs, ":"+CMD_SPEC_Options );
    g.setOpterr( false ); // handle errors manually
    int    c;
    String arg;

    while( -1 != ( c = g.getopt() ) ) {

      switch( c ) {

      case ARG_CONFIG : // configuration file
        configPath = g.getOptarg();
        usingDefaultConf = false;
        break;

      case ARG_ADD_CONFIG : // additional configuration file
        String addConfigPath = g.getOptarg();
        pAdditionalConfig.add( addConfigPath );
        break;

      case ARG_WRITER_FORMAT : // writer format
        String writerFormatPath = g.getOptarg().trim();
        checkDataFile( "WriterFormat", writerFormatPath );
        cmdLineOptions.set( Property.main_CodeWriterFormat, writerFormatPath );
        break;

      case ARG_TEMPLATE_DOC : // show documentation
        cmdLineOptions.set( Property.main_ShowDocumentation, Standard.YES );
        break;

      case ARG_OUTPUT_FOLDER : // output folder
        String outputFolder = g.getOptarg().trim();
        checkFolder( "Output", outputFolder );
        cmdLineOptions.set( Property.main_OutputFolder, outputFolder );
        break;

      case ARG_WORK_FOLDER : // work folder
        String workFolder = g.getOptarg().trim();
        checkFolder( "Work", workFolder );
        cmdLineOptions.set( Property.main_WorkFolder, workFolder );
        break;

      case ARG_TEMPLATE_LIST : // templates listed in separate file
        String templateList = g.getOptarg().trim();
        checkDataFile( "Template list", templateList );
        addTemplatesFromFile( new File( templateList ), cmdlinetemplates );
        usingTemplateListFile = true;
        break;

      case ARG_ARGUMENT : // template arguments
        codeWriterOptions.append( g.getOptarg() );
        codeWriterOptions.append( Standard.SPACE );
        break;

      case ARG_ALL_TEMPLATES : // all arguments are templates
        argumentsAreTemplateNames = true;
        break;

      case ARG_BACKUP_FOLDER : // set backup folder and make backups
        String backupFolder = g.getOptarg().trim();
        cmdLineOptions.set( Property.main_BackupFolder, backupFolder );
        cmdLineOptions.set( Property.main_MakeBackup, Standard.YES );
        break;

      case ARG_NO_BACKUP : // don't backup
        cmdLineOptions.set( Property.main_MakeBackup, Standard.NO );
        break;

      case ARG_META_FOLDER : // set meta folder and store metadata
        String metaFolder = g.getOptarg().trim();
        cmdLineOptions.set( Property.main_MetaFolder, metaFolder );
        cmdLineOptions.set( Property.main_EnableMeta, Standard.YES );
        break;

      case ARG_NO_META : // don't store metadata
        cmdLineOptions.set( Property.main_EnableMeta, Standard.NO );
        break;

      case ARG_COMPILE : // compile code writer
        cmdLineOptions.set( Property.main_CompileCodeWriter, Standard.YES );
        break;

      case ARG_NO_COMPILE : // don't compile code writer
        cmdLineOptions.set( Property.main_CompileCodeWriter, Standard.NO );
        break;

      case ARG_GENERATE : // execute code writer, that is, generate output files
        cmdLineOptions.set( Property.main_ExecuteCodeWriter, Standard.YES );
        break;

      case ARG_NO_GENERATE : // don't execute code writer, that is, don't generate output files
        cmdLineOptions.set( Property.main_ExecuteCodeWriter, Standard.NO );
        break;

      case ARG_DUMP : // dump template, settings, etc
        String dumpSpec = g.getOptarg().trim();
        Service.parseDumpSpec( dumpSpec, cmdLineOptions );
        break;

      case ARG_DEFINE : // config setting
        // REVIEW: this parsing should be somewhere else, probably TextUtil
        String nameValue = g.getOptarg().trim();
        int equalsPos = nameValue.indexOf("=");
        if( -1 != equalsPos ) {
          cmdLineOptions.set
            ( nameValue.substring(0, equalsPos).trim(),
              nameValue.substring(equalsPos + 1).trim()
              );
        }
        break;

      case ARG_NON_STANDARD : // non-standard options
        String nsOptions = g.getOptarg();
        parseNonStandardOptions( nsOptions, cmdLineOptions, sUserMessageHandler );
        break;

      case ARG_LOW_VERBOSE : // low verbosity
        cmdLineOptions.set( Property.main_MessageLevel, UserMessageHandler.TypeNameUtil.getNameForType( UserMessageHandler.WARN ) );
        break;

      case ARG_HIGH_VERBOSE : // high verbosity
        cmdLineOptions.set( Property.main_MessageLevel, UserMessageHandler.TypeNameUtil.getNameForType( UserMessageHandler.DEBUG ) );
        break;

      case ':': // missing argument to option
        throw new JostracaException( "Option " + (char)g.getOptopt() + " requires an argument." );

      default: // everything else is a template or a template srgument
        break;
      }
    }
   
    // get template path specifiers and arguments
    int start   = g.getOptind();
    int numArgs = pArgs.length;
    for( int tpsI = start; tpsI < numArgs; tpsI++ ) {
      String argument = pArgs[tpsI].trim();
      if( ( ( !usingTemplateListFile && start == tpsI )
            || argumentsAreTemplateNames
            || argument.toLowerCase().endsWith( JOSTRACA_TEMPLATE_SUFFIX ) ) )
        {
          cmdlinetemplates.add( argument );
        }
      else {
        codeWriterOptions.append( TextUtil.quoteSpaces( argument ) );
        codeWriterOptions.append( Standard.SPACE );
      }
    }

    addTemplatePaths( pTemplates, cmdlinetemplates );

    cmdLineOptions.set( Property.main_CodeWriterOptions, codeWriterOptions.toString() );
     
    cmdLineOptions.set( Property.jostraca_ConfigFile, configPath );
    cmdLineOptions.set( Property.jostraca_ConfigFolder, resolveConfigFolder( configPath ) );

    return cmdLineOptions;
  }
View Full Code Here

    Jostraca js = new Jostraca();
    js.handleSpecialArgs( pArgs );

    ArrayList   templatePaths    = new ArrayList()
    ArrayList   additionalConfig = new ArrayList()
    PropertySet cmdLineOptions   = js.parseCommandLine( pArgs, templatePaths, additionalConfig );
    js.handleCommandLineOptions( cmdLineOptions );

    String configFolder = cmdLineOptions.get( Property.jostraca_ConfigFolder );

    // create new service object and set templates
    Service s = new Service();
    s.loadConfigFromFolder( new File( configFolder ), additionalConfig );
View Full Code Here


  // private methods

  private static final PropertySet makeLangPS_java() {
    PropertySet ps = new PropertySet();
   
    return ps;
  }
View Full Code Here

   
    return ps;
  }

  private static final PropertySet makeLangPS_perl() {
    PropertySet ps = new PropertySet();
   
    ps.set( "lang.InsertPrefix", "$self->_insert( " );
   
    ps.set( "main.CodeWriterFormat", "BasicPerlWriterFormat.jwf" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.GenericController" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "main.CodeWriterSuffix", ".pl" );
   
    ps.set( "main.ExternalCompilerOptions", "-c" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicPerlCodeWriterController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "lang.FalseString", "0" );
   
    ps.set( "lang.StringEscapeTransform", "PerlStringEscapeTransform" );
   
    ps.set( "main.ExternalController", "perl" );
   
    ps.set( "lang.TrueString", "1" );
   
    ps.set( "main.process.Compiler", "org.jostraca.process.GenericCompiler" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "main.ExternalCompiler", "perl" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Compiler,Controller" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicPerlCodeWriterCompiler" );
   
    ps.set( "main.FullMetaPath", "yes" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    return ps;
  }
View Full Code Here

TOP

Related Classes of org.jostraca.util.PropertySet

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.