1 ${database.allClassCopyright}package ${glPackageBaseCommon};
\r
3 import ${glPackageBaseCommonBhv}.${glBehaviorReadableInterfaceName};
\r
6 * The entry of DBFlute.
\r
7 * @author ${database.ClassAuthor}
\r
8 */${database.outputSuppressWarningsAfterLineSeparator()}
\r
9 public class ${glBFinderName} {
\r
11 // ===================================================================================
\r
14 protected static String _dbfluteDiconName = "${database.DBFluteDiconFileName}";
\r
16 // ===================================================================================
\r
19 private ${glBFinderName}() {
\r
22 // ===================================================================================
\r
25 public static <BEHAVIOR_TYPE extends ${glBehaviorReadableInterfaceName}> BEHAVIOR_TYPE find(Class<BEHAVIOR_TYPE> behaviorType) {
\r
26 assertObjectNotNull("behaviorType", behaviorType);
\r
27 if (!org.seasar.framework.container.factory.SingletonS2ContainerFactory.hasContainer()) {
\r
28 synchronized (${glBFinderName}.class) {
\r
29 if (!org.seasar.framework.container.factory.SingletonS2ContainerFactory.hasContainer()) {
\r
30 final String configFile = _dbfluteDiconName;
\r
31 if (org.seasar.framework.util.ResourceUtil.isExist(configFile)) {
\r
32 org.seasar.framework.container.factory.SingletonS2ContainerFactory.setConfigPath(configFile);
\r
33 org.seasar.framework.container.factory.SingletonS2ContainerFactory.init();
\r
35 String msg = "S2Container is not initialized! Confirm your initializer and your dicon files.";
\r
36 throw new IllegalStateException(msg);
\r
41 final org.seasar.framework.container.S2Container container = org.seasar.framework.container.factory.SingletonS2ContainerFactory.getContainer();
\r
42 final BEHAVIOR_TYPE behavior = (BEHAVIOR_TYPE)container.getComponent(behaviorType);
\r
46 // ===================================================================================
\r
49 public static void setDBFluteDiconName(String dbfluteDiconName) {
\r
50 _dbfluteDiconName = dbfluteDiconName;
\r
53 // ===================================================================================
\r
57 * Assert that the object is not null.
\r
58 * @param variableName Variable name. (NotNull)
\r
59 * @param value Value. (NotNull)
\r
60 * @exception IllegalArgumentException
\r
62 protected static void assertObjectNotNull(String variableName, Object value) {
\r
63 if (variableName == null) {
\r
64 String msg = "The value should not be null: variableName=" + variableName + " value=" + value;
\r
65 throw new IllegalArgumentException(msg);
\r
67 if (value == null) {
\r
68 String msg = "The value should not be null: variableName=" + variableName;
\r
69 throw new IllegalArgumentException(msg);
\r
73 // ----------------------------------------------------------------
\r
77 * Assert that the entity is not null and not trimmed empty.
\r
78 * @param variableName Variable name. (NotNull)
\r
79 * @param value Value. (NotNull)
\r
81 protected void assertStringNotNullAndNotTrimmedEmpty(String variableName, String value) {
\r
82 assertObjectNotNull("variableName", variableName);
\r
83 assertObjectNotNull("value", value);
\r
84 if (value.trim().length() ==0) {
\r
85 String msg = "The value should not be empty: variableName=" + variableName + " value=" + value;
\r
86 throw new IllegalArgumentException(msg);
\r