KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > dotmarketing > portlets > languagesmanager > factories > LanguageFactory


1 package com.dotmarketing.portlets.languagesmanager.factories;
2
3 import java.util.List JavaDoc;
4
5 import com.dotmarketing.db.DotHibernate;
6 import com.dotmarketing.exception.DotRuntimeException;
7 import com.dotmarketing.portlets.languagesmanager.model.Language;
8 import com.dotmarketing.util.Config;
9 import com.dotmarketing.util.Logger;
10 import com.dotmarketing.util.UtilMethods;
11
12
13 /**
14  *
15  * @author will
16  */

17 public class LanguageFactory {
18
19     public static void deleteLanguage(Language language) {
20         DotHibernate.delete(language);
21     }
22
23     public static Language getLanguage(String JavaDoc languageCode, String JavaDoc countryCode) {
24         try {
25             DotHibernate dh = new DotHibernate(Language.class);
26             dh.setQuery(
27                 "from language in class com.dotmarketing.portlets.languagesmanager.model.Language where language_code = ? and country_code = ?");
28             dh.setParam(languageCode);
29             dh.setParam(countryCode);
30
31             return (Language) dh.load();
32         } catch (Exception JavaDoc e) {
33             Logger.error(LanguageFactory.class, "getLanguage failed:" + e, e);
34             throw new DotRuntimeException(e.toString());
35         }
36     }
37
38     public static Language getLanguage(String JavaDoc id) {
39         long x = 1;
40
41         try {
42             x = Long.parseLong(id);
43         } catch (Exception JavaDoc e) {
44         }
45
46         return getLanguage(x);
47     }
48
49     public static Language createDefaultLanguage() {
50         Language language = getLanguage (Config.getStringProperty("DEFAULT_LANGUAGE_CODE"), Config.getStringProperty("DEFAULT_LANGUAGE_COUNTRY_CODE"));
51         language.setCountry(Config.getStringProperty("DEFAULT_LANGUAGE_COUNTRY"));
52         language.setCountryCode(Config.getStringProperty("DEFAULT_LANGUAGE_COUNTRY_CODE"));
53         language.setLanguage(Config.getStringProperty("DEFAULT_LANGUAGE_STR"));
54         language.setLanguageCode(Config.getStringProperty("DEFAULT_LANGUAGE_CODE"));
55
56         //saves the new language
57
DotHibernate.save(language);
58         return language;
59     }
60
61     public static Language getLanguage(long id) {
62         try {
63             DotHibernate dh = new DotHibernate(Language.class);
64             dh.setQuery("from language in class com.dotmarketing.portlets.languagesmanager.model.Language where id = ? ");
65             dh.setParam(id);
66
67             return (Language) dh.load();
68         } catch (Exception JavaDoc e) {
69             Logger.error(LanguageFactory.class, "getLanguage failed:" + e, e);
70             throw new DotRuntimeException(e.toString());
71         }
72     }
73
74     public static List JavaDoc<Language> getLanguages() {
75         try {
76             DotHibernate dh = new DotHibernate(Language.class);
77             dh.setQuery("from language in class com.dotmarketing.portlets.languagesmanager.model.Language order by id");
78
79             return dh.list();
80         } catch (Exception JavaDoc e) {
81             Logger.error(LanguageFactory.class, "getLanguages failed:" + e, e);
82             throw new DotRuntimeException(e.toString());
83         }
84     }
85
86     public static void saveLanguage(Language o) {
87         DotHibernate.saveOrUpdate(o);
88     }
89
90     public static String JavaDoc getLanguageCodeAndCountry(long id, String JavaDoc langId) {
91         try {
92             DotHibernate dh = new DotHibernate(Language.class);
93
94             if (id == 0 && UtilMethods.isSet(langId)) {
95                 try {
96                     id = Long.parseLong(langId);
97                 } catch (Exception JavaDoc e) {
98                 }
99             }
100
101             Language language = null;
102
103             if (id > 0) {
104                 dh.setQuery("from language in class com.dotmarketing.portlets.languagesmanager.model.Language where id = ? ");
105                 dh.setParam(id);
106                 language = (Language) dh.load();
107             } else {
108                 language = getLanguage (Config.getStringProperty("DEFAULT_LANGUAGE_CODE"), Config.getStringProperty("DEFAULT_LANGUAGE_COUNTRY_CODE"));
109             }
110
111             return language.getLanguageCode() + "_" + language.getCountryCode();
112         } catch (Exception JavaDoc e) {
113             Logger.warn(LanguageFactory.class, "getLanguageCode failed:" + e, e);
114         }
115
116         return Config.getStringProperty("DEFAULT_LANGUAGE");
117     }
118     
119     private static Language defaultLanguage;
120     
121     public static Language getDefaultLanguage () {
122         if (defaultLanguage == null) {
123             defaultLanguage = getLanguage (Config.getStringProperty("DEFAULT_LANGUAGE_CODE"), Config.getStringProperty("DEFAULT_LANGUAGE_COUNTRY_CODE"));
124             if (defaultLanguage.getId() == 0)
125                 defaultLanguage = createDefaultLanguage();
126         }
127         return defaultLanguage;
128     }
129 }
130
Popular Tags