Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /* ************************************************************************
  #
  #  DivConq
  #
  #  http://divconq.com/
  #
  #  Copyright:
  #    Copyright 2014 eTimeline, LLC. All rights reserved.
  #
 #  License:
 #    See the license.txt file in the project's top-level directory for details.
 #
 #  Authors:
 #    * Andy White
 #
 ************************************************************************ */
 package divconq.script;
 
 import java.util.Map;
 
 
 public class Script {
 	static public final Pattern includepattern = Pattern.compile("(\\s*<\\?include\\s+\\/[A-Za-z0-9-_\\/]+\\.dcsl\\.xml\\s+\\?>\\s*\r?\n)". | .);
 	
 	protected XElement xml = null;
     protected ActivityManager manager = null;
 	protected Instruction main = null;
 	protected String source = null;
 
     public Script(ActivityManager man) {
     	this. = man;
     }
 
     public XElement getXml() {
         return this.
     }
 
     public Instruction getMain() {
     	return this.;
     }
 
     public Instruction getFunction(String name) {
     	return this..get(name);
     }
     
 	public String getTitle() {
 		if (this. == null)
 			return null;
 		
 		XElement sc = this..find("Script");
 		
 		return (sc != null) ? sc.getAttribute("Title") : "[Untitled]"
 	}
 	
 	public String getSource() {
 		return this.;
 	}
 
     public OperationResult compile(XElement docString src) {
         this. = doc;
         this. = src;
         this. = null;
         this..clear();
         
         OperationResult log = new OperationResult();
         
         if (doc == null) {
         	log.error(1, "No script document provided, cannot compile.");		// TODO codes
         	return log;
         }
         
         for (XElement func : doc.selectAll("Function")) {
         	String fname = func.getAttribute("Name");
         	
         	if (StringUtil.isEmpty(fname))
         		continue;
         	
 	        Instruction ni = this..createInstruction(func);
 	        ni.setXml(func);
 	        ni.compile(this.log);
 	        
 	        this..put(fnameni);
         }
         
         XElement node = doc.find("Main");
 
         if (node == null) {
         	log.errorTr(506);
         }
         else {
 	        Instruction ni = this..createInstruction(node);
 	        ni.setXml(node);
 	        ni.compile(this.log);
	        this. = ni
        }
        
        return log;
    }
New to GrepCode? Check out our FAQ X