Exemplo n.º 1
0
        /// <summary>
        /// Dumps the given item from the given cache and container.
        /// </summary>
        /// <param name="cache">Cache to look in.</param>
        /// <param name="container">Container to look in.</param>
        /// <param name="item">Item to dump.</param>
        private static void DumpItem(IItemCache cache, ItemCacheContainer container, string item)
        {
#if true
            byte[] content = cache.FetchItem(container, item);
            if (content != null)
            {
                BinaryWriter writer = new BinaryWriter(Console.OpenStandardOutput());
                writer.Write(content);
                writer.Close();
            }
#endif
#if false
            ResultSummaryRecord record = FetchRecord(cache, container, item);
            if (record != null)
            {
                Console.WriteLine();
                Console.WriteLine("IsVerificationTimeout = {0}", record.IsVerificationTimeout);
                Console.WriteLine("IsFailure = {0}", record.IsFailure);
            }
            else
            {
                Console.WriteLine();
                Console.WriteLine("FetchRecord failed for {0}", item);
            }
#endif
        }
Exemplo n.º 2
0
        /// <summary>
        /// Retrieves the requested result from the given cache.
        /// </summary>
        /// <param name="cache">Cache to query.</param>
        /// <param name="container">Container to query.</param>
        /// <param name="itemHash">Result to get.</param>
        /// <returns>The requested ResultSummaryRecord, or null if not found.</returns>
        private static ResultSummaryRecord FetchRecord(IItemCache cache, ItemCacheContainer container, string itemHash)
        {
            byte[] result = cache.FetchItem(container, itemHash);

            if (result != null)
            {
                MemoryStream resultStream = new MemoryStream(result);
                try
                {
                    using (StreamReader inReader = new StreamReader(resultStream))
                    {
                        string xmlSummary          = inReader.ReadToEnd();
                        ResultSummaryRecord record = ResultSummaryRecord.FromXml(xmlSummary);
                        if (record == null)
                        {
                            Console.WriteLine("FromXml failed for {0}", itemHash);
                        }

                        return(record);
                    }
                }
                catch (System.Xml.XmlException ex)
                {
                    Console.WriteLine("Malformed xml in {0}: {1}", itemHash, ex.ToString());
                    return(null);
                }
                finally
                {
                    resultStream.Dispose();
                }
            }
            else
            {
                Console.WriteLine("FetchItem failed for {0}", itemHash);
                return(null);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Retrieves the requested result from the given cache.
        /// </summary>
        /// <param name="cache">Cache to query.</param>
        /// <param name="container">Container to query.</param>
        /// <param name="itemHash">Result to get.</param>
        /// <returns>The requested ResultSummaryRecord, or null if not found.</returns>
        private static ResultSummaryRecord FetchRecord(IItemCache cache, ItemCacheContainer container, string itemHash)
        {
            byte[] result = cache.FetchItem(container, itemHash);

            if (result != null)
            {
                MemoryStream resultStream = new MemoryStream(result);
                try
                {
                    using (StreamReader inReader = new StreamReader(resultStream))
                    {
                        string xmlSummary = inReader.ReadToEnd();
                        ResultSummaryRecord record = ResultSummaryRecord.FromXml(xmlSummary);
                        if (record == null)
                        {
                            Console.WriteLine("FromXml failed for {0}", itemHash);
                        }

                        return record;
                    }
                }
                catch (System.Xml.XmlException ex)
                {
                    Console.WriteLine("Malformed xml in {0}: {1}", itemHash, ex.ToString());
                    return null;
                }
                finally
                {
                    resultStream.Dispose();
                }
            }
            else
            {
                Console.WriteLine("FetchItem failed for {0}", itemHash);
                return null;
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Dumps the given item from the given cache and container.
        /// </summary>
        /// <param name="cache">Cache to look in.</param>
        /// <param name="container">Container to look in.</param>
        /// <param name="item">Item to dump.</param>
        private static void DumpItem(IItemCache cache, ItemCacheContainer container, string item)
        {
#if true
            byte[] content = cache.FetchItem(container, item);
            if (content != null)
            {
                BinaryWriter writer = new BinaryWriter(Console.OpenStandardOutput());
                writer.Write(content);
                writer.Close();
            }
#endif
#if false
            ResultSummaryRecord record = FetchRecord(cache, container, item);
            if (record != null)
            {
                Console.WriteLine();
                Console.WriteLine("IsVerificationTimeout = {0}", record.IsVerificationTimeout);
                Console.WriteLine("IsFailure = {0}", record.IsFailure);
            }
            else
            {
                Console.WriteLine();
                Console.WriteLine("FetchRecord failed for {0}", item);
            }
#endif
        }