package mircoders.module;
import mir.log.LoggerWrapper;
-import mir.module.*;
-import mir.storage.StorageObject;
-import mir.util.*;
+import mir.module.AbstractModule;
+import mir.module.ModuleExc;
+import mir.module.ModuleFailure;
+import mir.util.JDBCStringRoutines;
+import mir.entity.Entity;
+import mir.entity.EntityList;
+import mircoders.storage.DatabaseLanguage;
/**
* Title: mir - another content management system
public class ModuleLanguage extends AbstractModule {
static LoggerWrapper logger = new LoggerWrapper("Module.Language");
- public ModuleLanguage (StorageObject theStorage) {
- if (theStorage == null)
- logger.warn("ModuleLanguage -- StorageObject was null!");
-
- this.theStorage = theStorage;
+ public ModuleLanguage () {
+ super(DatabaseLanguage.getInstance());
}
public String languageIdForCode(String aCode) throws ModuleExc, ModuleFailure {
try {
- return theStorage.executeFreeSingleValueSql("select id from language where code = '" + JDBCStringRoutines.escapeStringLiteral(aCode) + "'");
+ return storage.executeFreeSingleValueSql("select id from language where code = '" + JDBCStringRoutines.escapeStringLiteral(aCode) + "'");
+ }
+ catch (Throwable t) {
+ throw new ModuleFailure(t);
+ }
+ }
+
+ public Entity languageForCode(String aCode) throws ModuleExc, ModuleFailure {
+ try {
+ EntityList list = storage.selectByFieldValue("code", aCode);
+ if (list.size()>0) {
+ return list.elementAt(0);
+ }
+ else {
+ throw new ModuleExc("No language found for code " + aCode);
+ }
}
catch (Throwable t) {
throw new ModuleFailure(t);