public IQuotesDalGetTickersListResult GetTickersList(IQuotesDalGetTickersListParams getTsList)
        {
            IQuotesDalGetTickersListResult result = new QuotesDalMSSQLGetTickersListResult();

            string        spName = "[SP_Get_Tickers_List]";
            SqlConnection conn   = OpenConnection("ConnectionStringTimeSeries");

            long agencyId = !string.IsNullOrEmpty(getTsList.Agency) ? GetAgencyId(getTsList.Agency, conn) : Int32.MinValue;

            SqlCommand cmd = new SqlCommand();

            cmd.CommandText = schema + "." + spName;
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Connection  = conn;

            SqlParameter paramTypeId = new SqlParameter("@IN_Type_Id", SqlDbType.Int, 0, ParameterDirection.Input, false, 0, 0, "", DataRowVersion.Current, (int)getTsList.Type);

            cmd.Parameters.Add(paramTypeId);

            if (agencyId > Int32.MinValue)
            {
                SqlParameter paramAgencyId = new SqlParameter("@IN_Agency_Id", SqlDbType.BigInt, 0, ParameterDirection.Input, false, 0, 0, "", DataRowVersion.Current, agencyId);
                cmd.Parameters.Add(paramAgencyId);
            }

            DataSet        ds = new DataSet();
            SqlDataAdapter da = new SqlDataAdapter();

            da.SelectCommand = cmd;

            da.Fill(ds);

            if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                foreach (DataRow r in ds.Tables[0].Rows)
                {
                    result.Tickers.Add(new TickersListItem()
                    {
                        CountryCode = getTsList.CountryCode,
                        Ticker      = (string)r["Ticker_Symbol"],
                        Name        = (string)r["Ticker_Name"],
                        Unit        = (EUnit)r["TS_Unit_Id"],
                        Type        = getTsList.Type
                    });
                }

                result.Success = true;
            }
            else
            {
                result.Success = false;
                result.Errors.Add(new Interfaces.Error()
                {
                    Code    = Interfaces.EErrorCodes.EmptyCollection,
                    Message = string.Format("Failed to find tickers for {0}, {1}", getTsList.Type, getTsList.CountryCode)
                });
            }

            return(result);
        }
 public IQuotesDalGetTickersListResult GetTickersList(IQuotesDalGetTickersListParams getTsList)
 {
     throw new NotImplementedException();
 }
        public GetTickerListResponse Any(GetTickerList request)
        {
            _logger.Log(EErrorType.Info, " ****** Call start: GetTickerList");
            GetTickerListResponse response = new GetTickerListResponse();

            TransferHeader(request, response);

            try
            {
                if (IsValidSessionToken(request))
                {
                    IQuotesDalGetTickersListParams getTSListParams = _dal.CreateGetTickersListParams();
                    getTSListParams.CountryCode = request.CountryCode;
                    getTSListParams.Type        = request.Type;
                    getTSListParams.Agency      = request.Agency;

                    IQuotesDalGetTickersListResult getTSListResult = _dal.GetTickersList(getTSListParams);

                    if (getTSListResult.Success)
                    {
                        foreach (var t in getTSListResult.Tickers)
                        {
                            response.Payload.Tickers.Add(
                                new DTO.TickerListItem()
                            {
                                CountryCode = request.CountryCode,
                                Ticker      = t.Ticker,
                                Name        = t.Name,
                                Unit        = t.Unit,
                                Type        = t.Type
                            }
                                );
                        }

                        response.Success = true;
                    }
                    else
                    {
                        response.Errors.AddRange(getTSListResult.Errors);
                    }
                }
                else
                {
                    response.Success = false;
                    response.Errors.Add(new Error()
                    {
                        Code = EErrorCodes.InvalidSession, Type = EErrorType.Error, Message = "Invalid session token"
                    });
                }
            }
            catch (Exception ex)
            {
                _logger.Log(ex);
                response.Success = false;
                response.Errors.Add(new Error()
                {
                    Code    = EErrorCodes.GeneralError,
                    Type    = EErrorType.Error,
                    Message = string.Format("Unpexcted error: {0}", ex.Message)
                });
            }

            _logger.Log(EErrorType.Info, " ****** Call end: GetTickersList");

            return(response);
        }