private void ProcessQueryResult(CloudDBZoneSnapshot snapshot)
        {
            CloudDBZoneObjectList bookInfoCursor = snapshot.SnapshotObjects;
            string bookNames = "";

            try
            {
                while (bookInfoCursor.HasNext)
                {
                    BookInfo bookInfo = Helpers.ObjectTypeHelper.ConvertJavaTypeToCSharpType(bookInfoCursor.Next());
                    bookNames += bookInfo.BookName + ", ";

                    if (bookInfo.Author.Equals(bookInfoTest.Author))
                    {
                        bookInfoTest.Id = bookInfo.Id;
                    }
                }
            }
            catch (Exception e)
            {
                Log.Equals(Tag, "processQueryResult: " + e.Message);
            }
            finally
            {
                snapshot.Release();
            }
            if (bookNames.Equals(""))
            {
                ShowResultPopup("There is no record.");
            }
            else
            {
                ShowResultPopup(bookNames);
            }
        }
        public void OnSnapshot(CloudDBZoneSnapshot cloudDBZoneSnapshot, AGConnectCloudDBException e)
        {
            if (e != null)
            {
                Log.Error(Tag, "OnSnapshot: " + e.Message);
                return;
            }
            CloudDBZoneObjectList snapshotObjects = cloudDBZoneSnapshot.SnapshotObjects;

            IList <BookInfo> bookInfoList = new List <BookInfo>();

            try
            {
                if (snapshotObjects != null)
                {
                    while (snapshotObjects.HasNext)
                    {
                        BookInfo bookInfo = Helpers.ObjectTypeHelper.ConvertJavaTypeToCSharpType(snapshotObjects.Next());
                        bookInfoList.Add(bookInfo);
                    }
                }
            }
            catch (AGConnectCloudDBException snapshotException)
            {
                Log.Error(Tag, "OnSnapshot:(getObject) " + snapshotException.Message);
            }
            finally
            {
                cloudDBZoneSnapshot.Release();
            }
        }
    private void ProcessQueryResult(CloudDBZoneSnapshot <BookInfo> snapshot)
    {
        CloudDBZoneObjectList <BookInfo> bookInfoCursor = snapshot.GetSnapshotObjects();

        bookInfoList = new List <BookInfo>();
        try {
            while (bookInfoCursor.HasNext())
            {
                BookInfo bookInfo = bookInfoCursor.Next();
                bookInfoList.Add(bookInfo);
                Debug.Log($"{TAG} bookInfoCursor.HasNext() {bookInfo.Id}  {bookInfo.Author}");
            }
        } catch (Exception e) {
            Debug.Log($"{TAG} processQueryResult:  Exception => " + e.Message);
        } finally {
            snapshot.Release();
        }
    }