[blam] ItemStore: Add deserialization code
- From: Carlos Martín Nieto <cmartin src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [blam] ItemStore: Add deserialization code
- Date: Wed, 15 Sep 2010 04:05:48 +0000 (UTC)
commit 2b76d465e7b53e9c724e5f134960004f42594249
Author: Carlos MartÃn Nieto <carlos cmartin tk>
Date: Wed Sep 15 05:05:30 2010 +0100
ItemStore: Add deserialization code
src/ItemStore.cs | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
---
diff --git a/src/ItemStore.cs b/src/ItemStore.cs
index 3955414..2a487f9 100644
--- a/src/ItemStore.cs
+++ b/src/ItemStore.cs
@@ -1,6 +1,8 @@
using System;
using System.Collections;
using System.ServiceModel.Syndication;
+using System.Xml;
+using System.Xml.Serialization;
namespace Imendio.Blam
{
@@ -8,6 +10,14 @@ namespace Imendio.Blam
{
Hashtable items;
ItemStore instance = null;
+ static XmlSerializer serializer = new XmlSerializer(typeof(ItemStore));
+
+ [XmlElement("Item", typeof(Item))]
+ public Hashtable Items {
+ get {
+ return items;
+ }
+ }
void Add(SyndicationItem item)
{
@@ -17,12 +27,18 @@ namespace Imendio.Blam
public ItemStore GetInstance()
{
if(instance == null){
- instance = new ItemStore();
+ Load(Defines.APP_HOMEDIR + "/" + Defines.APP_ITEMSTORE_FILE);
}
return instance;
}
+ private void Load(string filename)
+ {
+ XmlTextReader reader = new XmlTextReader(filename);
+ instance = serializer.Deserialize(reader) as ItemStore;
+ }
+
private ItemStore ()
{
items = new Hashtable();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]