Ejemplo n.º 1
0
        /// <summary>Search AvailableElementData By ElementNumber.</summary>
        /// <param name="elementNumber">element number.</param>
        /// <param name="objAvailableElementData">[out] Information describing the object available element.</param>
        /// <returns>The success of the operation. Possible values are:
        /// <list type="table">
        /// <listheader><term>Error code</term><description>Description</description></listheader>
        /// <item><term>T2GManagerErrorEnum.eSuccess</term><description>Queryed element found.</description></item>
        /// <item><term>T2GManagerErrorEnum.eElementNotFound</term><description>Queried element is unknown.</description></item>
        /// <item><term>T2GManagerErrorEnum.eT2GServerOffline</term><description>T2G services are down.</description></item>
        /// </list>
        /// </returns>
        public T2GManagerErrorEnum GetAvailableElementDataByElementNumber(string elementNumber, out AvailableElementData objAvailableElementData)
        {
            if (LogManager.IsTraceActive(TraceType.INFO))
            {
                LogManager.WriteLog(TraceType.INFO, "GetAvailableElementDataByElementNumber called for element '" + elementNumber ?? string.Empty + "'.", "PIS.Ground.Core.T2G.T2GManager.GetAvailableElementDataByElementNumber", null, EventIdEnum.GroundCore);
            }


            T2GManagerErrorEnum result = T2GManagerErrorEnum.eFailed;

            if (T2GServerConnectionStatus)
            {
                AvailableElementData elementData = _localDataStorage.GetAvailableElementDataByElementNumber(elementNumber);

                if (elementData != null)
                {
                    objAvailableElementData = elementData;                     // copy reference

                    result = T2GManagerErrorEnum.eSuccess;
                }
                else
                {
                    objAvailableElementData = new AvailableElementData(); // always return an object
                    result = T2GManagerErrorEnum.eElementNotFound;
                }
            }
            else
            {
                objAvailableElementData = new AvailableElementData(); // always return an object
                result = T2GManagerErrorEnum.eT2GServerOffline;
            }

            return(result);
        }