コード例 #1
0
        private string AppendIncludedChildInfoString(string baseUrlStr, SenslinkInfoTypes includedChildInfos)
        {
            if (includedChildInfos == SenslinkInfoTypes.None)
            {
                return(baseUrlStr);
            }

            IEnumerable <SenslinkInfoTypes> types = System.Enum.GetValues(typeof(SenslinkInfoTypes)).OfType <SenslinkInfoTypes>();
            StringBuilder sb = new StringBuilder($"{baseUrlStr}/{{");

            foreach (SenslinkInfoTypes cunType in types)
            {
                if (cunType == SenslinkInfoTypes.None)
                {
                    continue;
                }

                if (includedChildInfos.HasFlag(cunType))
                {
                    sb.Append($"{cunType.ToString()}|");
                }
            }
            sb.Remove(sb.Length - 1, 1);
            sb.Append("}");
            return(sb.ToString());
        }
コード例 #2
0
        public HttpStatusCode StationGet(out StationInfo stationInfo, Guid id, SenslinkInfoTypes includedChildInfos)
        {
            string         responseString = string.Empty;
            string         requestUrl     = AppendIncludedChildInfoString($"Station/Get/{id.ToString()}", includedChildInfos);
            HttpStatusCode resultCode     = HttpGet(requestUrl, out responseString);

            stationInfo = null;
            if (resultCode == HttpStatusCode.OK && responseString != string.Empty)
            {
                JToken stationToken = JToken.Parse(responseString);
                stationInfo = stationToken.ToObject <StationInfo>();
            }
            return(resultCode);
        }
コード例 #3
0
        /// <summary>
        /// 6.7.2 ~ 6.7.4
        /// </summary>
        /// <param name="physicalQuantityInfo"></param>
        /// <param name="id"></param>
        /// <param name="includedChildInfos"></param>
        /// <returns></returns>
        public HttpStatusCode PhysicalQuantityGet(out PhysicalQuantityInfo physicalQuantityInfo, Guid id, SenslinkInfoTypes includedChildInfos)
        {
            string responseString = string.Empty;
            string requestUrlStr  = AppendIncludedChildInfoString($"PhysicalQuantity/Get/{id.ToString()}", includedChildInfos);

            HttpStatusCode resultCode = HttpGet(requestUrlStr, out responseString);

            physicalQuantityInfo = JToken.Parse(responseString).ToObject <PhysicalQuantityInfo>();
            return(resultCode);
        }
コード例 #4
0
        public HttpStatusCode PhysicalQuantityGetAll(out IEnumerable <PhysicalQuantityInfo> physicalQuantityInfos, SenslinkInfoTypes includedChildInfos)
        {
            string         resposeString = string.Empty;
            string         requestUrlStr = AppendIncludedChildInfoString("PhysicalQuantity/Get/All", includedChildInfos);
            HttpStatusCode resultCode    = HttpGet(requestUrlStr, out resposeString);

            JArray physicalQuantityJArray = JArray.Parse(resposeString);

            JToken[] physicalQuantityTokens           = physicalQuantityJArray.ToArray();
            List <PhysicalQuantityInfo> parsedPqInfos = new List <PhysicalQuantityInfo>();

            foreach (JToken physicalQuantityToken in physicalQuantityTokens)
            {
                parsedPqInfos.Add(physicalQuantityToken.ToObject <PhysicalQuantityInfo>());
            }

            physicalQuantityInfos = parsedPqInfos.ToList();
            return(resultCode);
        }
コード例 #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="stationInfos"></param>
        /// <param name="includedChildInfos"></param>
        /// <returns></returns>
        public HttpStatusCode StationGetAll(out IEnumerable <StationInfo> stationInfos, SenslinkInfoTypes includedChildInfos)
        {
            string resposeString = string.Empty;
            string requestUrl    = AppendIncludedChildInfoString("Station/Get/All", includedChildInfos);

            HttpStatusCode resultCode = HttpGet(requestUrl, out resposeString);

            stationInfos = null;
            if (resultCode == HttpStatusCode.OK)
            {
                JArray stationJArray = null;
                try
                {
                    stationJArray = JArray.Parse(resposeString);
                }
                catch
                {
                    Console.WriteLine("Get StationInfos Fail");
                    return(HttpStatusCode.BadRequest);
                }
                JToken[]           stationTokens      = stationJArray.ToArray();
                List <StationInfo> parsedStationInfos = new List <StationInfo>();
                foreach (JToken stationToken in stationTokens)
                {
                    StationInfo cunInfo = stationToken.ToObject <StationInfo>();
                    parsedStationInfos.Add(cunInfo);
                }
                stationInfos = parsedStationInfos.ToList();
            }
            return(resultCode);
        }
コード例 #6
0
        public HttpStatusCode StationGroupGet(out StationGroupInfo stationGroupInfo, Guid id, SenslinkInfoTypes includedChildInfos)
        {
            string        resposeString = string.Empty;
            StringBuilder sb            = new StringBuilder($"StationGroup/Get/{id.ToString()}");

            if (includedChildInfos != SenslinkInfoTypes.None)
            {
                bool isFirstChild = true;
                sb.Append("/{");

                if (includedChildInfos.HasFlag(SenslinkInfoTypes.PhysicalQuantity))
                {
                    sb.Append("PhysicalQuantity");
                    isFirstChild = false;
                }

                if (includedChildInfos.HasFlag(SenslinkInfoTypes.Category))
                {
                    if (!isFirstChild)
                    {
                        sb.Append("|");
                    }
                    sb.Append("Category");
                    isFirstChild = false;
                }
                sb.Append("}");
            }

            HttpStatusCode resultCode = HttpGet(sb.ToString(), out resposeString);

            stationGroupInfo = null;

            if (resultCode == HttpStatusCode.OK)
            {
                JToken stationGroupToken = JToken.Parse(resposeString);
                stationGroupInfo = stationGroupToken.ToObject <StationGroupInfo>();
            }
            return(resultCode);
        }
コード例 #7
0
        /// <summary>
        /// 6.5.1 ~ 6.5.2
        /// </summary>
        /// <param name="includedChildInfos"></param>
        /// <returns></returns>
        public HttpStatusCode StationGroupGetAll(out IEnumerable <StationGroupInfo> stationGroupInfos, SenslinkInfoTypes includedChildInfos)
        {
            string        resposeString = string.Empty;
            StringBuilder sb            = new StringBuilder("StationGroup/Get/All");

            if (includedChildInfos != SenslinkInfoTypes.None)
            {
                bool isFirstChild = true;
                sb.Append("/{");

                if (includedChildInfos.HasFlag(SenslinkInfoTypes.PhysicalQuantity))
                {
                    sb.Append("PhysicalQuantity");
                    isFirstChild = false;
                }

                if (includedChildInfos.HasFlag(SenslinkInfoTypes.Category))
                {
                    if (!isFirstChild)
                    {
                        sb.Append("|");
                    }
                    sb.Append("Category");
                    isFirstChild = false;
                }
                sb.Append("}");
            }

            HttpStatusCode resultCode = HttpGet(sb.ToString(), out resposeString);

            stationGroupInfos = null;

            if (resultCode == HttpStatusCode.OK)
            {
                JArray   stationGroupJArray = JArray.Parse(resposeString);
                JToken[] stationGroupTokens = stationGroupJArray.ToArray();
                List <StationGroupInfo> parsedStationGroupInfos = new List <StationGroupInfo>();
                foreach (JToken stationGroupToken in stationGroupTokens)
                {
                    StationGroupInfo cunInfo = stationGroupToken.ToObject <StationGroupInfo>();
                    parsedStationGroupInfos.Add(cunInfo);
                }
                stationGroupInfos = parsedStationGroupInfos.ToList();
            }
            return(resultCode);
        }