예제 #1
0
        /// <summary>
        /// 与えられた値を使用してURLを生成します。
        /// </summary>
        /// <param name="urlType">生成するURLのタイプ</param>
        /// <param name="datetime">生成するURLの時間</param>
        /// <param name="realTimeShindoType">(UrlType=RealTimeImgの際に使用)取得するリアルタイム情報の種類</param>
        /// <param name="isBerehole">(UrlType=RealTimeImgの際に使用)地中の情報を取得するかどうか</param>
        /// <returns></returns>
        public static string Generate(UrlType urlType, DateTime datetime,
                                      RealTimeImgType realTimeShindoType = RealTimeImgType.Shindo, bool isBerehole = false)
        {
            switch (urlType)
            {
            case UrlType.RealTimeImg:
                return(string.Format(RealTimeBase, realTimeShindoType.ToUrlString(), isBerehole ? "b" : "s", datetime.ToString("yyyyMMdd"), datetime.ToString("yyyyMMddHHmmss")));

            case UrlType.RestShindo:
                return(string.Format(EstShindoBase, datetime.ToString("yyyyMMdd"), datetime.ToString("yyyyMMddHHmmss")));

            case UrlType.PSWave:
                return(string.Format(PsWaveBase, datetime.ToString("yyyyMMdd"), datetime.ToString("yyyyMMddHHmmss")));

            case UrlType.EewJson:
                return(string.Format(JsonEewBase, datetime.ToString("yyyyMMddHHmmss")));
            }
            return(null);
        }
예제 #2
0
        /// <summary>
        /// URLに使用する文字列に変換する
        /// </summary>
        /// <param name="type">変換するRealTimeImgTypy</param>
        /// <returns>変換された文字列</returns>
        public static string ToUrlString(this RealTimeImgType type)
        {
            switch (type)
            {
            case RealTimeImgType.Shindo:
                return("jma");

            case RealTimeImgType.Pga:
                return("acmap");

            case RealTimeImgType.Pgv:
                return("vcmap");

            case RealTimeImgType.Pgd:
                return("dcmap");

            case RealTimeImgType.Response_0_125Hz:
                return("rsp0125");

            case RealTimeImgType.Response_0_25Hz:
                return("rsp0250");

            case RealTimeImgType.Response_0_5Hz:
                return("rsp0500");

            case RealTimeImgType.Response_1Hz:
                return("rsp1000");

            case RealTimeImgType.Response_2Hz:
                return("rsp2000");

            case RealTimeImgType.Response_4Hz:
                return("rsp4000");
            }
            return(null);
        }