Exemple #1
0
 public static async Task <IApiResult <TwitterList> > ShowListAsync(
     [NotNull] this IApiAccessor accessor,
     [NotNull] ListParameter targetList, CancellationToken cancellationToken)
 {
     if (accessor == null)
     {
         throw new ArgumentNullException(nameof(accessor));
     }
     return(await accessor.GetAsync("lists/show.json", targetList.ToDictionary(),
                                    ResultHandlers.ReadAsListAsync, cancellationToken).ConfigureAwait(false));
 }
Exemple #2
0
 public bool AddList(ListParameter parameter)
 {
     lock (_targetLists)
     {
         var index = _targetLists.IndexOf(parameter);
         if (index >= 0)
         {
             return(false);
         }
         _targetLists.Add(parameter);
         return(true);
     }
 }
Exemple #3
0
        //
        // ProgramList
        //

        public static Parameter CreateChangeProgramParameter(this ProgramList programs, int unitId = 0)
        {
            var valueInfo = new ParameterValueInfo(precision: 0);

            valueInfo.ParameterInfo.UnitId = unitId;
            valueInfo.ParameterInfo.Flags  =
                ParameterInfo.ParameterFlags.IsProgramChange | ParameterInfo.ParameterFlags.CanAutomate | ParameterInfo.ParameterFlags.IsList;

            var listParam = new ListParameter <string>(valueInfo);

            listParam.Values.AddRange(programs.Select(p => p.Name));
            return(listParam);
        }
Exemple #4
0
 public bool RemoveList(ListParameter parameter)
 {
     lock (_targetLists)
     {
         var index = _targetLists.IndexOf(parameter);
         if (index < 0)
         {
             return(false);
         }
         if (index < _accessIndex)
         {
             _accessIndex--;
         }
         _targetLists.RemoveAt(index);
         return(true);
     }
 }
Exemple #5
0
        public static async Task <IApiResult <ICursorResult <IEnumerable <TwitterList> > > > GetListMembershipsAsync(
            [NotNull] this IApiAccessor accessor,
            [NotNull] ListParameter targetList, long?cursor, CancellationToken cancellationToken)
        {
            if (accessor == null)
            {
                throw new ArgumentNullException(nameof(accessor));
            }
            if (targetList == null)
            {
                throw new ArgumentNullException(nameof(targetList));
            }
            var param = new Dictionary <string, object>()
            {
                { "cursor", cursor },
            }.ApplyParameter(targetList);

            return(await accessor.GetAsync("lists/memberships.json", param,
                                           ResultHandlers.ReadAsCursoredListsAsync, cancellationToken).ConfigureAwait(false));
        }
Exemple #6
0
        public static async Task <IApiResult <IEnumerable <TwitterStatus> > > GetListTimelineAsync(
            [NotNull] this IApiAccessor accessor,
            [NotNull] ListParameter listTarget, long?sinceId, long?maxId, int?count, bool?includeRts,
            CancellationToken cancellationToken)
        {
            if (accessor == null)
            {
                throw new ArgumentNullException(nameof(accessor));
            }
            var param = new Dictionary <string, object>()
            {
                { "since_id", sinceId },
                { "max_id", maxId },
                { "count", count },
                { "include_rts", includeRts },
            }.ApplyParameter(listTarget).SetExtended();

            return(await accessor.GetAsync("lists/statuses.json", param,
                                           ResultHandlers.ReadAsStatusCollectionAsync, cancellationToken)
                   .ConfigureAwait(false));
        }
Exemple #7
0
        protected override async Task <RateLimitDescription> Execute(CancellationToken token)
        {
            long listId;

            if (_listId == null)
            {
                // get description (not required to receive, but important operation)
                var list = await ListProxy.GetOrReceiveListDescription(_accessor, _list);

                _listId = listId = list.Id;
            }
            else
            {
                listId = _listId.Value;
            }
            var idParam = new ListParameter(listId);
            var result  = await RetrieveCursoredResult(_accessor,
                                                       (a, i) => a.GetListMembersAsync(idParam, i, token), CallExceptionHandler, token)
                          .ConfigureAwait(false);

            _usersHandler(result.Result);
            CallHandler(result.Result.Select(u => u.Id));
            return(result.RateLimit);
        }
Exemple #8
0
 private async Task <IApiResult <TwitterList> > ReceiveListDescription(IApiAccessor accessor,
                                                                       ListParameter parameter)
 {
     return(await accessor.ShowListAsync(parameter, CancellationToken.None));
 }
 public ListParameterStep(Step previous, ListParameter listParameter)
     : base(previous)
 {
     Description = listParameter;
 }
 public ListParameterBuilder(Action <ListParameter> listParameterBuilt, TArgsBuilder argsBuilder, Name listParameterName)
 {
     this.listParameterBuilt = listParameterBuilt;
     this.argsBuilder        = argsBuilder;
     listParameter           = new ListParameter(listParameterName, typeof(TParam));
 }
Exemple #11
0
 public ListInfo(ListParameter parameter)
 {
     OwnerScreenName = parameter.OwnerScreenName;
     Slug            = parameter.Slug;
 }
Exemple #12
0
        protected JsonResult ListarJqGrid <T, TResult>(ListParameter <T, TResult> configuracionListado)
            where T : EntityBase where TResult : class
        {
            try
            {
                GridTable grid = configuracionListado.Grid;

                Expression <Func <T, bool> > where =
                    LambdaFilterManager.ConvertToLambda <T>(grid.Columns, grid.Search, grid.Homologaciones)
                    .And(configuracionListado.FiltrosAdicionales ?? (q => true));

                var         count        = configuracionListado.CountMethod(where);
                OrderColumn ordenamiento = grid.Order.First();

                var currentPage     = (grid.Start / grid.Length);
                var parametroFiltro = new FilterParameters <T>
                {
                    ColumnOrder = grid.Columns[ordenamiento.Column].Name,
                    CurrentPage = (currentPage >= 0 ? currentPage : 0) + 1,
                    OrderType   =
                        ordenamiento.Dir != null
                            ? (TipoOrden)Enum.Parse(typeof(TipoOrden), ordenamiento.Dir, true)
                            : TipoOrden.Asc,
                    WhereFilter = where,
                    AmountRows  = grid.Length > 0 ? grid.Length : count
                };

                int totalPages = 0;

                if (count > 0 && parametroFiltro.AmountRows > 0)
                {
                    if (count % parametroFiltro.AmountRows > 0)
                    {
                        totalPages = count / parametroFiltro.AmountRows + 1;
                    }
                    else
                    {
                        totalPages = count / parametroFiltro.AmountRows;
                    }

                    totalPages = totalPages == 0 ? 1 : totalPages;
                }

                parametroFiltro.CurrentPage = parametroFiltro.CurrentPage > totalPages
                    ? totalPages
                    : parametroFiltro.CurrentPage;
                parametroFiltro.Start = grid.Start;

                List <TResult> respuestaList =
                    configuracionListado.ListMethod(parametroFiltro)
                    .ToList()
                    .Select(configuracionListado.SelecctionFormat).ToList();

                var responseData = new DataTableResponse <TResult>
                {
                    data            = respuestaList,
                    recordsFiltered = count,
                    recordsTotal    = count
                };

                return(Json(responseData));
            }
            catch (Exception ex)
            {
                LogError(ex);
                return(MensajeError());
            }
        }
 public override void Prepare(ListParameter <File> parameter)
 {
     Files         = parameter.Data;
     SelectedIndex = parameter.SelectedIndex;
 }