You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by jc...@apache.org on 2013/06/13 11:32:44 UTC
git commit: ISIS-436: extending the application settings to read/write
Updated Branches:
refs/heads/master 449a03bac -> 77041d893
ISIS-436: extending the application settings to read/write
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/77041d89
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/77041d89
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/77041d89
Branch: refs/heads/master
Commit: 77041d89327d7311df1465179cbcd7700c7460bd
Parents: 449a03b
Author: Jeroen van der Wal <je...@stromboli.it>
Authored: Thu Jun 13 11:29:18 2013 +0200
Committer: Jeroen van der Wal <je...@stromboli.it>
Committed: Thu Jun 13 11:29:18 2013 +0200
----------------------------------------------------------------------
.../settings/ApplicationSettingsServiceJdo.java | 23 ++++++++++-----
.../settings/ApplicationSettingsService.java | 6 +++-
.../settings/ApplicationSettingsServiceRW.java | 31 ++++++++++++++++++++
3 files changed, 51 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/77041d89/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/settings/ApplicationSettingsServiceJdo.java
----------------------------------------------------------------------
diff --git a/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/settings/ApplicationSettingsServiceJdo.java b/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/settings/ApplicationSettingsServiceJdo.java
index aae1a2d..d73aa6f 100644
--- a/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/settings/ApplicationSettingsServiceJdo.java
+++ b/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/settings/ApplicationSettingsServiceJdo.java
@@ -31,6 +31,7 @@ import org.apache.isis.applib.annotation.Optional;
import org.apache.isis.applib.query.QueryDefault;
import org.apache.isis.applib.services.settings.ApplicationSetting;
import org.apache.isis.applib.services.settings.ApplicationSettingsService;
+import org.apache.isis.applib.services.settings.ApplicationSettingsServiceRW;
import org.apache.isis.applib.services.settings.SettingAbstract;
import org.apache.isis.applib.services.settings.SettingType;
@@ -39,7 +40,7 @@ import org.apache.isis.applib.services.settings.SettingType;
* as entities into a JDO-backed database.
*/
@Named("Application Settings")
-public class ApplicationSettingsServiceJdo extends AbstractService implements ApplicationSettingsService {
+public class ApplicationSettingsServiceJdo extends AbstractService implements ApplicationSettingsServiceRW {
@Hidden
@Override
@@ -52,36 +53,41 @@ public class ApplicationSettingsServiceJdo extends AbstractService implements Ap
// //////////////////////////////////////
+ @SuppressWarnings({ "rawtypes", "unchecked" })
@MemberOrder(sequence="1")
- public List<ApplicationSettingJdo> listAll() {
- return allMatches(
+ public List<ApplicationSetting> listAll() {
+ return (List)allMatches(
new QueryDefault<ApplicationSettingJdo>(ApplicationSettingJdo.class,
"applicationsetting_all"));
}
// //////////////////////////////////////
+ @Override
@MemberOrder(sequence="10")
- public ApplicationSettingJdo newString(
+ public ApplicationSetting newString(
@Named("Key") String key,
@Named("Description") @Optional String description,
@Named("Value") String value) {
return newSetting(key, description, SettingType.STRING, value);
}
+ @Override
@MemberOrder(sequence="11")
public ApplicationSettingJdo newInt(
@Named("Key") String key,
@Named("Description") @Optional String description,
- @Named("Value") int value) {
- return newSetting(key, description, SettingType.INT, new Integer(value).toString());
+ @Named("Value") Integer value) {
+ return newSetting(key, description, SettingType.INT, value.toString());
}
+ @Override
@MemberOrder(sequence="12")
public ApplicationSettingJdo newLong(
@Named("Key") String key,
@Named("Description") @Optional String description,
- @Named("Value") long value) {
- return newSetting(key, description, SettingType.LONG, new Long(value).toString());
+ @Named("Value") Long value) {
+ return newSetting(key, description, SettingType.LONG, value.toString());
}
+ @Override
@MemberOrder(sequence="13")
public ApplicationSettingJdo newLocalDate(
@Named("Key") String key,
@@ -89,6 +95,7 @@ public class ApplicationSettingsServiceJdo extends AbstractService implements Ap
@Named("Value") LocalDate value) {
return newSetting(key, description, SettingType.LOCAL_DATE, value.toString(SettingAbstract.DATE_FORMATTER));
}
+ @Override
@MemberOrder(sequence="14")
public ApplicationSettingJdo newBoolean(
@Named("Key") String key,
http://git-wip-us.apache.org/repos/asf/isis/blob/77041d89/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsService.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsService.java b/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsService.java
index 1d4c4c3..6eefcb5 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsService.java
@@ -18,10 +18,14 @@
*/
package org.apache.isis.applib.services.settings;
+import java.util.List;
+
import org.apache.isis.applib.annotation.Named;
public interface ApplicationSettingsService {
ApplicationSetting find(@Named("Key") String key);
-
+
+ List<ApplicationSetting> listAll();
+
}
http://git-wip-us.apache.org/repos/asf/isis/blob/77041d89/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsServiceRW.java
----------------------------------------------------------------------
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsServiceRW.java b/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsServiceRW.java
new file mode 100644
index 0000000..ba5c651
--- /dev/null
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/settings/ApplicationSettingsServiceRW.java
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.isis.applib.services.settings;
+
+import org.joda.time.LocalDate;
+
+public interface ApplicationSettingsServiceRW extends ApplicationSettingsService {
+
+ ApplicationSetting newInt(String name, String description, Integer defaultValue);
+ ApplicationSetting newLocalDate(String name, String description, LocalDate defaultValue);
+ ApplicationSetting newLong(String name, String description, Long defaultValue);
+ ApplicationSetting newString(String name, String description, String defaultValue);
+ ApplicationSetting newBoolean(String name, String description, Boolean defaultValue);
+
+}