Package com.iizix.run.common
Class CodeModifier
- java.lang.Object
- com.iizix.run.common.CodeModifier
public class CodeModifier extends java.lang.ObjectClass to help with JS code modification in order to match the app settings.- Author:
- Christopher Mindus
Field Summary
Fields Modifier and Type Field Description static java.lang.String[]DOJO_LOCALESThe Dojo supported locales used for "extraLocales".static java.util.Set<java.lang.String>dojoLocalesThe hash set with Dojo locales.
Constructor Summary
Constructors Constructor Description CodeModifier()Constructor with the settings.
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringcreateSource_Build_JSON(RuntimeBuilderSettings settings, java.io.File appDir, boolean isVerbose)Creates the "build.json" file.java.io.FilegetClassPath(java.lang.Class<?> clazz)Gets the classpath from a class.static java.lang.StringgetDojoLanguageCode(java.lang.String languageCode)Gets the locale that matches the Dojo locale if possible.java.io.FilegetFile(java.lang.String name)Gets a file from the resources.java.util.Map<java.lang.String,java.lang.String>getLanguageStringsMap(RuntimeBuilderSettings settings)Gets the English language strings required in "msg.js" for internal build or "msg-customized.js" for customized iiziRun's.java.util.zip.ZipFilegetZipFile(java.lang.String name)Gets a ZIP file from the resources.static java.util.List<com.iizix.run.common.CodeModifier.Texts>loadTextFile(java.io.File dir)Loads the localized text entries from the files.protected java.net.URLresolve(java.net.URL url)Resolves the resources/dojo.zip from the URL.java.util.List<com.iizix.run.common.CodeModifier.Texts>writeTextFile(java.io.File dir, RuntimeBuilderSettings settings)Writes all the text's used in the app, for all text tables into an UTF-8 encoded file that is read later on by the pre-build processor to Android, iOS or Android.
Method Detail
getDojoLanguageCode
public static java.lang.String getDojoLanguageCode(java.lang.String languageCode)
Gets the locale that matches the Dojo locale if possible.- Parameters:
languageCode- The language code.- Returns:
- The Dojo language code, or null for none.
resolve
protected java.net.URL resolve(java.net.URL url) throws java.io.IOExceptionResolves the resources/dojo.zip from the URL.- Parameters:
url- to the file "dojo.zip" in resources directory.- Returns:
- The resolved URL.
- Throws:
java.io.IOException- For I/O errors.
getClassPath
public java.io.File getClassPath(java.lang.Class<?> clazz) throws java.io.IOExceptionGets the classpath from a class.- Parameters:
clazz- The class to check.- Returns:
- The File for the classpath.
- Throws:
java.io.IOException- For I/O errors.
getFile
public java.io.File getFile(java.lang.String name) throws java.io.IOExceptionGets a file from the resources.- Parameters:
name- The name of the file.- Returns:
- The File.
- Throws:
java.io.IOException- For I/O errors.
getZipFile
public java.util.zip.ZipFile getZipFile(java.lang.String name) throws java.io.IOExceptionGets a ZIP file from the resources.- Parameters:
name- The name of the ZIP file.- Returns:
- The ZipFile.
- Throws:
java.io.IOException- For I/O errors.
getLanguageStringsMap
public java.util.Map<java.lang.String,java.lang.String> getLanguageStringsMap(RuntimeBuilderSettings settings) throws java.io.FileNotFoundException, java.io.IOException
Gets the English language strings required in "msg.js" for internal build or "msg-customized.js" for customized iiziRun's.- Parameters:
settings- The settings, null if normal customized iiziRun's.- Returns:
- A new map of the strings, key is the text ID and the value is the text.
- Throws:
java.io.IOException- For file errors.java.io.FileNotFoundException
writeTextFile
public java.util.List<com.iizix.run.common.CodeModifier.Texts> writeTextFile(java.io.File dir, RuntimeBuilderSettings settings) throws java.io.IOExceptionWrites all the text's used in the app, for all text tables into an UTF-8 encoded file that is read later on by the pre-build processor to Android, iOS or Android.- Parameters:
dir- The root directory where "config.xml" is located.settings- The settings.- Throws:
java.io.IOException- For file errors.
loadTextFile
public static java.util.List<com.iizix.run.common.CodeModifier.Texts> loadTextFile(java.io.File dir) throws java.io.IOExceptionLoads the localized text entries from the files.- Parameters:
dir- The app's root directory where "config.xml" is located.- Throws:
java.io.IOException- For file errors.
createSource_Build_JSON
public java.lang.String createSource_Build_JSON(RuntimeBuilderSettings settings, java.io.File appDir, boolean isVerbose)
Creates the "build.json" file.- Parameters:
settings- The settings.appDir- The root of the Cordova app dir.- Returns:
- null for success, otherwise an error message that has been logged already.