/// <summary>
/// Parses a JSON string and returns a book data struct from that
/// </summary>
public BookData ParseString(string val)
{
BookData bookData = new BookData();
string[] jsonLines = val.Split(',');
foreach (string line in jsonLines)
{
string[] elements = line.Split(':');
if (elements.Length > 1)
{
string jsonKey = GetJSONValue(elements[0]);
if (jsonKey.Equals(TITLE_KEY))
{
bookData.SetBookTitle(GetJSONValue(elements[1]));
}
else if (jsonKey.Equals(AUTHOR_KEY))
{
bookData.SetBookAuthor(GetJSONValue(elements[1]));
}
else if (jsonKey.Equals(AVERAGE_RATING_KEY))
{
bookData.SetBookRating(int.Parse(GetJSONValue(elements[1])));
}
else if (jsonKey.Equals(NUMB_OF_RATINGS_KEY))
{
bookData.SetBookOverallRating(int.Parse(GetJSONValue(elements[1])));
}
else if (jsonKey.Equals(LIST_PRICE_KEY))
{
bookData.SetBookRegularPrice(float.Parse(GetJSONValue(elements[1])));
}
else if (jsonKey.Equals(YOUR_PRICE_KEY))
{
bookData.SetBookYourPrice(float.Parse(GetJSONValue(elements[1])));
}
else if (jsonKey.Equals(THUMB_URL_KEY))
{
string thumbUrl = "";
for (int j = 1; j < elements.Length; j++)
{
thumbUrl += elements[j];
if (j == 1)
{
thumbUrl += ":";
}
}
bookData.SetBookThumbUrl(GetJSONValue(thumbUrl));
}
else if (jsonKey.Equals(BOOK_URL_KEY))
{
string bookUrl = "";
for (int j = 1; j < elements.Length; j++)
{
bookUrl += elements[j];
if (j == 1)
{
bookUrl += ":";
}
}
bookData.SetBookDetailUrl(GetJSONValue(bookUrl));
}
}
}
return(bookData);
}