Added:
trunk/objectmanager-api/src/com/db4o/objectmanager/api/helpers/SerializerHelper.java
Modified:
trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationFacade.java
trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationProvider.java
Log:
Support to save configuration
Added: trunk/objectmanager-api/src/com/db4o/objectmanager/api/helpers/SerializerHelper.java
==============================================================================
--- (empty file)
+++
trunk/objectmanager-api/src/com/db4o/objectmanager/api/helpers/SerializerHelper.java
Sun Apr 20 18:16:13 2008
@@ -0,0 +1,48 @@
+/* Copyright (C) 2004 - 2007 db4objects Inc. http://www.db4o.com */
+/**
+ * User: gishac
+ * Date: Apr 20, 2008
+ * Time: 1:52:50 AM
+ */
+package com.db4o.objectmanager.api.helpers;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+
+public class SerializerHelper {
+ /**
+ * Serializes an object to the specified file path
+ * @param serializableObject Object to serialize
+ * @param filePath Path to save the serialized object
+ * @throws IOException
+ */
+ public static void Serialize(Object serializableObject, String filePath)
+ throws IOException {
+ FileOutputStream fileStream = new FileOutputStream(filePath);
+ ObjectOutputStream objectStream = new ObjectOutputStream(fileStream);
+ objectStream.writeObject(serializableObject);
+ objectStream.flush();
+ objectStream.close();
+ }
+
+ /**
+ * Deserializes an object
+ * @param filePath Path of the serialized object
+ * @return
+ * @throws IOException
+ * @throws ClassNotFoundException
+ */
+ public static Object Deserialize(String filePath) throws IOException,
ClassNotFoundException {
+ Object result = null;
+ if(! new File(filePath).exists())
+ return result;
+ FileInputStream fileStream = new FileInputStream(filePath);
+ ObjectInputStream objectStream = new ObjectInputStream(fileStream);
+ result = objectStream.readObject();
+ return result;
+ }
+}
Modified: trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationFacade.java
==============================================================================
---
trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationFacade.java (original)
+++
trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationFacade.java
Sun Apr 20 18:16:13 2008
@@ -6,16 +6,36 @@
*/
package com.db4o.objectmanager.configuration;
+import java.io.Serializable;
+
import com.db4o.io.IoAdapter;
-public class ConfigurationFacade {
+public class ConfigurationFacade implements Serializable {
transient IoAdapter _encryptionProvider;
private boolean _unicode;
private boolean _lockDatabaseFile;
private boolean _callConstructors;
+ private String _encryptionPassword;
+ private String _encriptionProviderPath;
+ public static String CONFIGURATION_FILE_PATH = ".\\configuration.cfg";
+ public ConfigurationFacade(){
+
+ }
+ public String encriptionProviderPath() {
+ return _encriptionProviderPath;
+ }
+ public void encriptionProviderPath(String providerPath) {
+ _encriptionProviderPath = providerPath;
+ }
+ public String encryptionPassword() {
+ return _encryptionPassword;
+ }
+ public void encryptionPassword(String password) {
+ _encryptionPassword = password;
+ }
public IoAdapter encryptionProvider() {
return _encryptionProvider;
}
@@ -40,4 +60,6 @@
public void callConstructors(boolean callConstructors) {
_callConstructors = callConstructors;
}
+
+
}
Modified: trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationProvider.java
==============================================================================
---
trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationProvider.java (original)
+++
trunk/objectmanager-api/src/com/db4o/objectmanager/configuration/ConfigurationProvider.java
Sun Apr 20 18:16:13 2008
@@ -22,10 +22,28 @@
public class ConfigurationProvider implements Serializable {
transient private ConfigurationFacade _configuration;
- transient IoAdapter _encryptionProvider;
+ transient IoAdapter _encryptionProvider;
private boolean _unicodeEnabled;
private boolean _lockDatabase;
private boolean _callConstructors;
+ private String _encryptionPassword;
+ private String _encryptionProviderPath;
+
+ public String encryptionPassword() {
+ return _encryptionPassword;
+ }
+
+ public void encryptionPassword(String password) {
+ _encryptionPassword = password;
+ }
+
+ public String encryptionProviderPath() {
+ return _encryptionProviderPath;
+ }
+
+ public void encryptionProviderPath(String providerPath) {
+ _encryptionProviderPath = providerPath;
+ }
public ConfigurationProvider() {
@@ -99,6 +117,8 @@
_configuration.callConstructors(callConstructors());
_configuration.unicode(unicodeEnabled());
_configuration.lockDatabaseFile(lockDatabase());
+ _configuration.encryptionPassword(encryptionPassword());
+ _configuration.encriptionProviderPath(encryptionProviderPath());
if(encryptionProvider() != null)
_configuration.encryptionProvider(encryptionProvider());
return _configuration;