X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Fmodule%2FModuleLanguage.java;h=565d3d9736916a91458f712a0a6ed6ef0080a0c9;hb=63e0ee1fb8038eb6d8f0190cf38c3b3ab2727216;hp=c08166338cf14a8968c495478a7dccaf62bf28fb;hpb=d0335bd2d0ee79719fbb6809679e261871844964;p=mir.git diff --git a/source/mircoders/module/ModuleLanguage.java b/source/mircoders/module/ModuleLanguage.java index c0816633..565d3d97 100755 --- a/source/mircoders/module/ModuleLanguage.java +++ b/source/mircoders/module/ModuleLanguage.java @@ -30,9 +30,13 @@ 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 @@ -46,16 +50,28 @@ import mir.util.*; 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);