コード例 #1
0
        /// <summary>	Aggregate result tasks. </summary>
        ///
        /// <remarks>	Paul, 19/02/2015. </remarks>
        ///
        /// <typeparam name="T">	Generic type parameter. </typeparam>
        /// <param name="c">		The RequestContext to process. </param>
        /// <param name="post">     true to post. </param>
        /// <param name="dummy">	The dummy. </param>
        ///
        /// <returns>	A Task&lt;T&gt;[]. </returns>
        Task <T>[] AggregateResultTasks <T>(string url, string postArgs, string getArgs, bool post, MySqlData database)
        {
            List <MarketRow> allMarkets = database.GetAllMarkets();

            // get all unique daemon urls
            List <string> allDaemons = allMarkets.Select <MarketRow, string>(r => r.daemon_url).Distinct().ToList();

            Task <T>[] allTasks = new Task <T> [allDaemons.Count()];

            // execute the get on each one
            for (int i = 0; i < allTasks.Length; i++)
            {
                if (post)
                {
                    allTasks[i] = Rest.JsonApiCallAsync <T>(ApiUrl(allDaemons[i], url), postArgs);
                }
                else
                {
                    allTasks[i] = Rest.JsonApiGetAsync <T>(ApiUrl(allDaemons[i], url) + (getArgs.Length > 0?"?" + getArgs:""));
                }
            }

            return(allTasks);
        }
コード例 #2
0
ファイル: DaemonMySql.cs プロジェクト: wildbunny/metaexchange
 /// <summary>	Gets all markets. </summary>
 ///
 /// <remarks>	Paul, 05/02/2015. </remarks>
 ///
 /// <returns>	all markets. </returns>
 protected List <MarketRow> GetAllMarkets()
 {
     return(m_dataAccess.GetAllMarkets());
 }