/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
package apple.applescript;
private static native void initNative();
static {
initNative();
TRACE("<static-init>");
}
// System.out.println(AppleScriptEngineFactory.class.getName() + "." + str);
}
/**
* The name of this ScriptEngine
*/
/**
* The version of this ScriptEngine
*/
/**
* The name of this ScriptEngine (yes, again)
*/
/**
* The name of the language supported by this ScriptEngine
*/
TRACE("getFactory()");
return new AppleScriptEngineFactory();
}
/**
* Initialize a new AppleScriptEngineFactory, replete with a member AppleScriptEngine
*/
public AppleScriptEngineFactory() {
TRACE("<ctor>()");
}
/**
* Returns the full name of the ScriptEngine.
*
* @return full name of the ScriptEngine
*/
TRACE("getEngineName()");
return ENGINE_NAME;
}
/**
* Returns the version of the ScriptEngine.
*
* @return version of the ScriptEngine
*/
TRACE("getEngineVersion()");
return ENGINE_VERSION;
}
/**
* Returns the name of the scripting language supported by this ScriptEngine.
*
* @return name of the language supported by the ScriptEngine(Factory)
*/
TRACE("getLanguageName()");
return LANGUAGE;
}
/**
* Returns the version of the scripting language supported by this ScriptEngine(Factory).
*
* @return language version supported by the ScriptEngine(Factory)
*/
TRACE("getLanguageVersion()");
return engine.getLanguageVersion();
}
});
}
/**
* Returns an immutable list of filename extensions, which generally identify
* scripts written in the language supported by this ScriptEngine.
*
* @return ArrayList of file extensions AppleScript associates with
*/
TRACE("getExtensions()");
}
/**
* Returns an immutable list of mimetypes, associated with scripts
* that can be executed by the engine.
*
* @return ArrayList of mimetypes that AppleScript associates with
*/
TRACE("getMimeTypes()");
}
/**
* Returns an immutable list of short names for the ScriptEngine,
* which may be used to identify the ScriptEngine by the ScriptEngineManager.
*
* @return
*/
TRACE("getNames()");
}
/**
* Returns a String which can be used to invoke a method of a Java
* object using the syntax of the supported scripting language.
*
* @param obj
* unused -- AppleScript does not support objects
* @param m
* function name
* @param args
* arguments to the function
* @return the AppleScript string calling the method
*/
// StringBuilder builder = new StringBuilder();
// builder.append("my " + fname + "(");
// // TODO -- do
// builder.append(")\n");
// return builder.toString();
return null;
}
/**
* Returns a String that can be used as a statement to display the specified String using the syntax of the supported scripting language.
*
* @param toDisplay
* @return
*/
// TODO -- this might even be good enough? XD
}
/**
* Returns the value of an attribute whose meaning may be implementation-specific.
*
* @param key
* the key to look up
* @return the static preseeded value for the key in the ScriptEngine, if it exists, otherwise <code>null</code>
*/
}
/**
* Returns A valid scripting language executable program with given statements.
*
* @param statements
* @return
*/
}
}
/**
* Returns an instance of the ScriptEngine associated with this ScriptEngineFactory.
*
* @return new AppleScriptEngine with this factory as it's parent
*/
return new AppleScriptEngine(this);
}
}