private static void getBookPages(PublishedBook publishedBook, XmlBook book) { int count = 0; for (int i = 0; i < publishedBook.Pages.Length; i++) { for (int j = 0; j < publishedBook.Pages[i].Lines.Length; j++) { if (publishedBook.Pages[i].Lines[j].Trim() != string.Empty) { count++; } } } book.Contents = new XmlBook.Content[count]; count = 0; for (int i = 0; i < publishedBook.Pages.Length; i++) { for (int j = 0; j < publishedBook.Pages[i].Lines.Length; j++) { if (publishedBook.Pages[i].Lines[j].Trim() != string.Empty) { book.Contents[count] = new XmlBook.Content(); book.Contents[count].Line = j + 1; book.Contents[count].Page = i + 1; book.Contents[count].Text = publishedBook.Pages[i].Lines[j]; count++; } } } }
private static void getBookContributors(PublishedBook publishedBook, XmlBook book) { if (publishedBook.Contributors != null) { book.Contributors = new XmlBook.Contributor[publishedBook.Contributors.Length]; for (int i = 0; i < publishedBook.Contributors.Length; i++) { book.Contributors[i] = new XmlBook.Contributor(); book.Contributors[i].Name = publishedBook.Contributors[i]; } } }
public static XmlBook Load(string id) { string fileName = "data/books/" + id + ".xml"; try { XmlSerializer serializer = new XmlSerializer(typeof(XmlBook)); FileStream fs = new FileStream(fileName, FileMode.Open); XmlBook book = (XmlBook)serializer.Deserialize(fs); fs.Close(); return(book); } catch (Exception) { return(null); } }
public static bool Save(PublishedBook publishedBook) { XmlBook book = XmlBook.FromPublishedBook(publishedBook); string fileName = DataPath + book.ID.ToString() + ".xml"; try { if (!Directory.Exists(Path.GetDirectoryName(fileName))) { Directory.CreateDirectory(Path.GetDirectoryName(fileName)); } XmlSerializer serializer = new XmlSerializer(typeof(XmlBook)); FileStream fs = new FileStream(fileName, FileMode.Create); serializer.Serialize(fs, book); fs.Close(); return(true); } catch (Exception) { return(false); } }
private static XmlBook FromPublishedBook(PublishedBook publishedBook) { XmlBook book = new XmlBook(); book.Title = publishedBook.Title; book.Author = publishedBook.Author; book.FirstPublished = publishedBook.FirstPublished.ToString("u").Replace(' ','T'); book.LastPublished = publishedBook.LastPublished.ToString("u").Replace(' ','T'); book.Hue = publishedBook.Hue; book.HuedItemID = publishedBook.HuedItemID; book.ItemID = publishedBook.ItemID; getBookContributors(publishedBook, book); getBookPages(publishedBook, book); try { book.ID = new Guid(publishedBook.PublishID); } catch(Exception) { book.ID = Guid.NewGuid(); publishedBook.PublishID = book.ID.ToString(); } return book; }
private static XmlBook FromPublishedBook(PublishedBook publishedBook) { XmlBook book = new XmlBook(); book.Title = publishedBook.Title; book.Author = publishedBook.Author; book.FirstPublished = publishedBook.FirstPublished.ToString("u").Replace(' ', 'T'); book.LastPublished = publishedBook.LastPublished.ToString("u").Replace(' ', 'T'); book.Hue = publishedBook.Hue; book.HuedItemID = publishedBook.HuedItemID; book.ItemID = publishedBook.ItemID; getBookContributors(publishedBook, book); getBookPages(publishedBook, book); try { book.ID = new Guid(publishedBook.PublishID); } catch (Exception) { book.ID = Guid.NewGuid(); publishedBook.PublishID = book.ID.ToString(); } return(book); }
private static void getBookPages(PublishedBook publishedBook, XmlBook book) { int count = 0; for(int i = 0; i < publishedBook.Pages.Length; i++) for(int j = 0; j < publishedBook.Pages[i].Lines.Length; j++) if(publishedBook.Pages[i].Lines[j].Trim() != string.Empty) count++; book.Contents = new XmlBook.Content[count]; count = 0; for(int i = 0; i < publishedBook.Pages.Length; i++) for(int j = 0; j < publishedBook.Pages[i].Lines.Length; j++) if(publishedBook.Pages[i].Lines[j].Trim() != string.Empty) { book.Contents[count] = new XmlBook.Content(); book.Contents[count].Line = j + 1; book.Contents[count].Page = i + 1; book.Contents[count].Text = publishedBook.Pages[i].Lines[j]; count++; } }
private static void getBookContributors(PublishedBook publishedBook, XmlBook book) { if(publishedBook.Contributors != null) { book.Contributors = new XmlBook.Contributor[publishedBook.Contributors.Length]; for(int i = 0; i < publishedBook.Contributors.Length; i++) { book.Contributors[i] = new XmlBook.Contributor(); book.Contributors[i].Name = publishedBook.Contributors[i]; } } }