コード例 #1
0
        public override void Execute()
        {
            var notifications = ActivityNotifications.GetByUserId(_userId).Select(n => new NotificationWrapper(n)).ToArray();;

            foreach (var notification in notifications)
            {
                if (notification.object_type == "activity_action")
                {
                    var  activity = ActivityActions.GetById(notification.object_id);
                    Feed f        = new Feed(new Activity(activity), notification.subject_id, notification.subject_type, false);
                    notification._object    = new ActivityActionWrapper(activity);
                    notification.feed_title = f.feed_title;
                    notification.action_type_body_params = f.action_type_body_params;
                    notification.url = f.Subject.Url;
                }
                else
                {
                }
            }


            var response = new
            {
                recentUpdateTotalItemCount = notifications.Length,
                recentUpdates = notifications
            };

            Response = JsonConvert.SerializeObject(response);
        }
コード例 #2
0
        public override void Execute()
        {
            // if (HandlePromptCommands())
            // {
            //     return; //special prompt handling
            // }

            base.Execute();
            Logger.Instance.Debug($"action privacy is {activity.RawActivity.privacy} and given in parameter : {reqParams.auth_view}");
            if (string.IsNullOrEmpty(activity.RawActivity.privacy))
            {
                activity.RawActivity.privacy = reqParams.auth_view; //will fix this in fb posts
                activityModified             = true;
            }
            HandleFBUserPosts();
            HandleFBLinks();
            HandleFBVideos();

            //check if the post contain interesting source like fb page
            CheckForSources();
            if (activityModified)
            {
                ActivityActions.Update(activity.RawActivity);
            }
            //return the feed
            Logger.Instance.Debug($"returning the feed");
            GetFeedHandler getFeedHandler = new GetFeedHandler(userId, reqParams);

            getFeedHandler.Execute();
            Response = getFeedHandler.Response;
        }
コード例 #3
0
        private SourceData GetSource(ulong actionId, bool useBank = false)
        {
            Logger.Instance.Debug($"Getting source for action {actionId} useBank={useBank}");
            ActivityAction rawAction = null;

            if (useBank)
            {
                rawAction = FetchActionFromBank(actionId);
            }
            else
            {
                Logger.Instance.Debug("Geiint from db");
                rawAction = ActivityActions.GetById((uint)actionId, false);
            }

            if (rawAction == null)
            {
                Logger.Instance.Info($"no ActivityAction {actionId} in DB or bank");
                return(null);
            }
            ulong subjectId   = rawAction.subject_id;
            var   subjectType = rawAction.subject_type;

            return(SourcesMap.Instance.GetSource(subjectId, subjectType));
        }
コード例 #4
0
ファイル: likeController.cs プロジェクト: sharons74/koobeca
        public List <uint> Get(uint objectId)
        {
            //return Likes.GetByResourceId(resourceId).ToArray();

            return(ActivityActions
                   .GetByObjectId(objectId, "activity_action", "like_activity_action")
                   .Select(a => a.subject_id).ToList());
        }
コード例 #5
0
        public void UpdateAction(ulong actionId)
        {
            var rawActivity = ActivityActions.GetById((uint)actionId);
            var activity    = FindActivity(actionId, out var source);

            activity.RawActivity = rawActivity;
            source.ActivityFeed.AdvanceActivity(actionId);
        }
コード例 #6
0
ファイル: ActivityHandler.cs プロジェクト: sharons74/koobeca
        protected virtual void RemoveActivityAction(ActivityAction action)
        {
            Activity activity = new Activity(action);

            activity.Source.ActivityFeed.RemoveActivity(activity, true); //remove it from the feeds
            ActivityCache.Instance.Remove(action.action_id);
            ActivityActions.Delete(action.action_id, deleteAttachments: true);
            HiddenActivities.RemoveForActivity(action.action_id);
            ActivityNotifications.RemoveForActivity(action.action_id);
        }
コード例 #7
0
ファイル: UnitTest1.cs プロジェクト: sharons74/koobeca
        public void TestMethod1()
        {
            var rc  = ActivityActions.Get(306, 20);
            var str = Encoding.UTF8.GetString(rc[0].body);
            var ser = new XmlSerializer(typeof(ActivityAction));
            var sw  = new StringWriter();

            ser.Serialize(sw, rc[0]);
            var result = sw.ToString();

            Console.WriteLine("{0}", result);
            Assert.IsNotNull(rc);
        }
コード例 #8
0
        private void RemoveRefActions(ActivityAction action)
        {
            var refActions = ActivityActions.GetByObjectId((uint)action.action_id, "activity_action");

            //ActivityActions.RemoveRefActivities(activity.ActivityId);
            if (refActions != null)
            {
                foreach (var refAction in refActions)
                {
                    RemoveActivityAction(refAction);
                }
            }
        }
コード例 #9
0
ファイル: LikesHandler.cs プロジェクト: sharons74/koobeca
        protected override void CheckIfRefExists(out ActivityAction refActivity, out object activityRecord)
        {
            refActivity    = ActivityActions.GetRefActivity("like_activity_action", activity.ActivityId, "activity_action", userId, false);
            activityRecord = Likes.GetByResourceAndPoster((uint)activity.ActivityId, "activity_action", userId, "user");

            if (refActivity != null && !IsActivityUpdate(refActivity))
            {
                throw new Exception($"Like to {activity.ActivityId} by user {userId} already exists in activity actions");
            }
            if (activityRecord != null && !IsRecordUpdate(activityRecord))
            {
                throw new Exception($"Like to {activity.ActivityId} by user {userId} already exists in Likes table");
            }
        }
コード例 #10
0
ファイル: ActivityFeed.cs プロジェクト: sharons74/koobeca
        public bool AppendFeed(DateTime endTime, int count)
        {
            if (!canAppend)
            {
                return(false);
            }

            lock (_lock)
            {
                var newfeed = new List <ulong>();

                var fetchedActivities = ActivityActions.GetBySubjectOrObjectId((uint)_sourceId, _sourceType, endTime, count);
                if (_sourceId == 339)
                {
                    Logger.Instance.Debug($"got {fetchedActivities.Count()} ativities from DB before date {endTime}");
                }

                if (fetchedActivities.Count() < count)
                {
                    canAppend = false;                                    //there is no point in trying to fetch more
                }
                foreach (var rawActivity in fetchedActivities.Reverse())
                {
                    //add it to the cache (if needed) and the id to the list
                    ActivityCache.Instance.Set(new Activity(rawActivity));
                    newfeed.Add(rawActivity.action_id);
                }

                if (newfeed.Count > 0)
                {
                    //update minDate
                    MinimumDate = ActivityCache.Instance.Get(newfeed.Min(id => id)).CreationDate;
                }

                if (_feed == null)
                {
                    //first time
                    _feed = newfeed;
                }
                else
                {
                    //we are appending to existing feed
                    newfeed.AddRange(_feed);
                    _feed = newfeed;
                }

                return(canAppend);
            }
        }
コード例 #11
0
        public void CheckAndUpdateAction(ulong actionId)
        {
            //get the raw action
            var rawActivity = ActivityActions.GetById((uint)actionId);

            if (rawActivity == null)
            {
                Console.WriteLine($"action {actionId} was not found in DB");
                return;
            }

            var activity = FindActivity(actionId, out var source);

            activity.RawActivity = rawActivity;
            source.ActivityFeed.AdvanceActivity(actionId);
        }
コード例 #12
0
        public override void Execute()
        {
            Logger.Instance.Debug($"Sharing activity {reqParams.action_id} by user:{userId}");
            activity.Source.ActivityFeed.AdvanceActivity(activity);
            activity.RawActivity.modified_date = DateTime.Now;
            ActivityActions.Update(activity.RawActivity);
            if (activity.IsShare)
            {
                //we want to share the primary
                activity = activity.InnerActivity;
            }
            var share = CreateRefActivity(ActivityType.Share);

            userSource.ActivityFeed.AddActivity(share);
            SendNotifications();
            LikeSourceIfPossible(activity.EffectiveSubjectId, activity.EffectiveSubjetType);
        }
コード例 #13
0
        private Activity GetReferenceActivityOnCreation(Activity activity, ulong userId, string type)
        {
            Logger.Instance.Debug($"trying to find {type} to type {activity.RawActivity.type} object type {activity.ObjectType}:{activity.ObjectId}");

            var objectId   = activity.ActivityId;
            var objectType = "activity_action";

            //fixing SEAO missing activities
            if (activity.ObjectType == "album_photo")
            {
                objectId   = activity.ObjectId;
                objectType = activity.ObjectType;

                //if (type == "like")
                //{
                //    //add like to the table
                //    Like newLike = new Like() { poster_id = (uint)userId,poster_type = "user",reaction = "like",resource_id = (uint)activity.ActivityId};
                //    Likes.Add(newLike);
                //}
            }
            ActivityAction rawRefAction = null;

            if (type == "like")
            {
                rawRefAction = ActivityActions.GetLikeActivity(objectId, objectType, userId);
            }
            if (rawRefAction == null)
            {
                Logger.Instance.Warn($"Didn't find in db the {type} activity of {userId} to action {activity.ActivityId}");
            }
            else
            {
                //if (rawRefAction.object_type != "activity_action")
                //{
                //    Logger.Instance.Debug($"need to update the inner activity of the {type} action {rawRefAction.action_id} to {activity.ActivityId}, currently it is pointing to {rawRefAction.object_type}");
                //    ActivityActions.SetInnerActivity(rawRefAction.action_id, activity.ActivityId, "like");
                //    //fetch it again from DB
                //    rawRefAction = ActivityActions.GetByID(rawRefAction.action_id);

                //}
            }
            var refActivity = new Activity(rawRefAction);

            return(refActivity);
        }
コード例 #14
0
ファイル: ActivityHandler.cs プロジェクト: sharons74/koobeca
        protected Activity CreateRefActivity(ActivityType type)
        {
            string typeStr = type.ToString().ToLower();

            if (type != ActivityType.Share)
            {
                typeStr += "_activity_action";
            }
            ActivityAction refAction = ActivityAction.CreateReferenceAction(activity.RawActivity, typeStr, userId);

            refAction.body = GetRefBody();
            //add it to the DB & Cache
            ActivityActions.Add(refAction, true);
            var newActivity = new Activity(refAction);

            ActivityCache.Instance.Set(newActivity);
            return(newActivity);
        }
コード例 #15
0
        protected override void CheckIfRefNotExists(out ActivityAction refActivityAction, out object actionRecord)
        {
            refActivityAction = ActivityActions.GetRefActivity("like_activity_action", activity.ActivityId, "activity_action", userId, true);
            actionRecord      = Likes.GetByResourceAndPoster((uint)activity.ActivityId, "activity_action", userId, "user");


            if ((actionRecord == null && refActivityAction != null) || (actionRecord != null && refActivityAction == null))
            {
                Logger.Instance.Warn($"Inconsistancy in likes and activity tables, to {activity.ActivityId} by user {userId}");
            }

            if (refActivityAction == null)
            {
                Logger.Instance.Warn($"like to {activity.ActivityId} by user {userId} not exists in activity actions");
            }
            if (actionRecord == null)
            {
                Logger.Instance.Warn($"like to {activity.ActivityId} by user {userId} not exists in likes table");
            }
        }
コード例 #16
0
        public void AddComment(ulong userId, ulong actionId, ulong commentId, ActivityAction commentAction)
        {
            var activity = FindActivity(actionId, out var source);


            var user = SourcesMap.Instance.GetSource(userId, "user");

            Console.WriteLine($"Adding comment {commentId} to {actionId} by user {userId}");
            activity.RawActivity.comment_count++;
            source.ActivityFeed.AdvanceActivity(actionId);
            if (activity.IsShare)
            {
                Logger.Instance.Info("for comments on shares we do not create activity in user's feed");
                return;
            }
            if (!activity.CommentersList.Contains((uint)userId))
            {
                activity.CommentersList.Add((uint)userId);
            }

            //add "comment" activity to the user's feed
            var commentActivity = user.ActivityFeed.AddActivity(commentAction.action_id, commentAction);

            if (commentAction.object_type != "activity_action")
            {
                Logger.Instance.Debug($"need to update the inner activity of the comment action {commentAction.action_id} to {actionId}, currently it is pointing to {commentAction.object_type}");
                ActivityActions.SetInnerActivity(commentAction.action_id, activity.ActivityId, "comment");
                if (commentActivity != null)
                {
                    //fetch it again from DB
                    commentAction = ActivityActions.GetById(commentAction.action_id);

                    commentActivity.RawActivity   = commentAction;//put it in the activity
                    commentActivity.InnerActivity = activity;
                    Logger.Instance.Debug($"inner activity updated");
                }
            }
        }
コード例 #17
0
ファイル: UnCommentHandler.cs プロジェクト: sharons74/koobeca
        protected override void CheckIfRefNotExists(out ActivityAction refActivityAction, out object actionRecord)
        {
            Logger.Instance.Debug($"Comment id = {reqParams.comment_id}");
            var comment = Comments.GetByCommentId(reqParams.comment_id);

            actionRecord = comment ?? throw new Exception($"Comment to {activity.ActivityId} by user {userId} not exists in Comments table");

            var allComments = ActivityActions.GetByObjectId((uint)activity.ActivityId, "activity_actions");

            foreach (var aa in allComments)
            {
                Logger.Instance.Debug($"found {aa.type} , id {aa.action_id} on time {aa.modified_date}");
            }
            Logger.Instance.Debug($"looking to match comment on {activity.ActivityId} with date {comment.creation_date}");

            refActivityAction = ActivityActions.GetRefActivity("comment_activity_action", activity.ActivityId, "activity_action", userId, false, comment.creation_date);

            if (refActivityAction == null)
            {
                Logger.Instance.Warn($"Inconsistancy in Comments and activity tables , to {activity.ActivityId} by user {userId}");
                //throw new Exception($"Inconsistancy in Comments and activity tables , to {activity.ActivityId} by user {userId}");
            }
        }
コード例 #18
0
        public override void Execute()
        {
            SetReqParamsDefaults();

            CheckIfRefExists(out ActivityAction refActivityAction, out object activityRecord);


            Activity refActivity = null;

            if (refActivityAction == null)
            {
                //adding new referenc activity
                IncreaseCount();
                activity.Source.ActivityFeed.AdvanceActivity(activity); // advance the activity that is reference in it's ownr's feed
                activity.RawActivity.modified_date = DateTime.Now;
                ActivityActions.Update(activity.RawActivity);           //update DB
                refActivity = CreateRefActivity(type);
                userSource.ActivityFeed.AddActivity(refActivity);
                AddUpdateRefItemToSource(refActivity.RawActivity, reqParams.reaction);
                AddRefToTable();
                SendNotifications();
                LikeSourceIfPossible(activity.EffectiveSubjectId, activity.EffectiveSubjetType);
            }
            else
            {
                //update content of existing activity reference
                Logger.Instance.Debug($"Update content of existing activity {refActivityAction.action_id}");
                activity.Source.ActivityFeed.AdvanceActivity(activity); // advance the activity that is reference in it's ownr's feed
                activity.RawActivity.modified_date = DateTime.Now;
                ActivityActions.Update(activity.RawActivity);           //update DB
                refActivity = ActivityCache.Instance.Get(refActivityAction.action_id);
                refActivity.RawActivity.body = GetRefBody();
                AddUpdateRefItemToSource(refActivity.RawActivity, reqParams.reaction);
                UpdateActionInDB(refActivity.RawActivity);
                UpdateRefInTable((Like)activityRecord);
            }
        }
コード例 #19
0
        public Activity Get(ulong actionId)
        {
            lock (_lock)
            {
                if (_cache.TryGetValue(actionId, out ActivityCacheItem item))
                {
                    item.LastAccess = DateTime.Now;
                    return(item.Activity);
                }
            }
            //else
            var newitem = new ActivityCacheItem();
            var action  = ActivityActions.GetById((uint)actionId);

            if (action != null)
            {
                newitem.Activity = new Activity(action);
            }
            lock (_lock)
            {
                _cache[actionId] = newitem;
            }
            return(newitem.Activity);
        }
コード例 #20
0
        static void Main(string[] args)
        {
            var user = Users.GetFullById(3);// GetAll().Where(u => u.email == "*****@*****.**").FirstOrDefault();

            MembersBrowseHandler h = new MembersBrowseHandler(0, new RequestParams());

            h.Execute();
            var ums   = UserMemberships.Get(3).Where(u => u.active == true && u.user_approved == false).ToList();
            var users = Users.GetAllFull();

            var act = ActivityActions.GetById(11526);

            //var vid = Videos.GetById(2047);
            //GetFeedHandler feedHandler = new GetFeedHandler(3, new RequestParams() { filter_type = "all" });
            //feedHandler.Execute();
            //var json = feedHandler.Response;

            //Logger.Instance.Level = LogLevel.Info;
            //PrintTime("get source", new Action(() =>
            //{
            //    for (int i = 0; i < 100; i++)
            //    {
            //        GetFeedHandler feedHandler2 = new GetFeedHandler(3, new RequestParams() { filter_type = "all" });
            //        feedHandler2.Execute();
            //    }
            //}));
            //PageSources.GetByType("fb_page").ForEach(s => Console.WriteLine($"x{s.source_id}x"));
            //var x = PageSources.GetBySourceId("18793419640", "fb_page");

            //var f = CoreSettings.Get("advancedactivity.feed.font.size", "20");
            //ResponseBody resp = new ResponseBody(random pages as source FeedWrapper[0]);
            //var json= JsonConvert.SerializeObject(resp);
            //var feedHandler = HandlerFactory.CreateHandler("feed", 370, new RequestParams() { subject_id = 370 , subject_type = "user"}, new Dictionary<string, object>());
            //feedHandler.Execute();

            GetActivitiesFromServer();
            Random r = new Random();
            //List<int> simplesort = new List<int>();
            //for (int i = 0; i < 1000; i++)
            //{
            //    simplesort.Add(r.Next(100000));
            //}

            //PrintTime("sort time", new Action(() =>
            //{
            //    for (int i = 0; i < 10000; i++)
            //    {
            //        var copyList = simplesort.ToList();
            //        copyList.Sort();
            //    }
            //}));
            //PrintTime("reverse enumaration", new Action(() =>
            //{
            //    for (int i = 0; i < 100000; i++)
            //    {
            //        foreach (var f in ll.Reverse<int>() ){ }
            //    }
            //}));

            //var src = SourcesMap.Instance.GetSource(3, "user");
            //var sf = src.Feed;
            //foreach(var sssss in sf.Reverse()) { }
            //var U = Users.GetAll().Where(u => u.user_id == 306).ToArray();
            ////var z = Storages.GetByFileId(1);
            ////z = Storages.GetByFileId(1);
            //var x = Users.GetAll();
            ////PrintTime("initial db read", new Action(() => DbAccess.Instance.InitialDBRead()));
            //var d = 1;

            ////var rc = ActivityActions.Get(306, 20);



            ////var actions = rc.Select(act => act.action_id).ToArray();
            ////uint actNum = 10000;
            //PrintTime("get from DB", new Action(() =>
            //{
            //    for (int i = 0; i < 500; i++)
            //    {
            //        var r = ActivityActions.GetByID((uint)i,false);
            //    }
            //}));

            //double y = RandomBytes.Rand.Next(200) / 1.2;
            //byte a = (byte)y;
            //int count = 100000000;
            //var x = RandomBytes.Next;
            ////PrintTime($"Create {count} randoms", new Action(()=>CreateRandoms(count)));
            ////PrintTime($"Create {count} regular randoms", new Action(() => CreateRegularRandoms(count)));
            ////PrintTime($"Create {count} randoms", new Action(() => CreateRandoms(count)));

            ////ListToArrayTest();
            //PrintTime("LIst to array test", ListToArrayTest);
            //PrintTime("Array copy test", ArrayCopyTest);

            ulong userId = 3;

            ////set categories for the user
            //SourcesMap.Instance.GetSource(userId);

            //ulong[] sources = null;
            //PrintTime("Generate User Sources", () => { sources = FeedController.Instance.GetUserSources(userId).Select(s => s.MemberId).ToArray(); });
            ////var s =
            //PrintTime("Creating 1000000 items feed", () => ItemFeed.Instance.Init());

            //PrintTime("Generating Random Activity", () => GenerateRandomActivity(sources, 20));
            //  PrintTime("Getting 1 user's activityfeed", () => FeedController.Instance.GetActivityFeed(userId, 60));



            //PrintTime("Getting 1000 mobile user's activityfeed", () => {
            //    //var x22 = File.ReadAllText(@"C:\Workspace\feedtests\10757.txt");
            //    //var ooo = JsonConvert.DeserializeObject(x22);
            //    RequestParams request = new RequestParams()
            //    {
            //        viewerId = (uint)userId,
            //        subject_id = (uint)userId,
            //        subject_type = "user"
            //    };
            //    for (var i = 0; i < 1000; i++) {
            //    FeedGenerator generator = new SourceFeedGenerator(request);
            //    var feed = generator.GetFeedJson();
            //        //var feed = FeedController.Instance.GetActivityFeed(userId, 60000);
            //        //var resultJson = JsonConvert.SerializeObject(feed);
            //    }
            //});
            // PrintTime("Get 1000000 source activites", () => TestGetSourceActivites(sources[0], 1000000));

            PrintTime("DB Get Updated Network members", () =>
            {
                for (var i = 0; i < 1000000; i++)
                {
                    DbAccess.Instance.UpdateAllNetworkMembers();
                }
                return;
            });


            // PrintTime("Add 1000 activities", () => TestAddActivity(1000));

            PrintTime("DB Get Updated SourceData", () =>
            {
                for (var i = 0; i < 1000; i++)
                {
                    DbAccess.Instance.UpdateSourceData();
                }
                return;
            });

            var sw = new Stopwatch();

            sw.Start();
            //var items = ItemFeed.Instance.QuickList;
            //for (int i = 0; i < 100; i++)
            //{
            //    //var controller = new FeedController();
            //    var sources = FeedController.Instance.GetUserSources(i);
            //}
            sw.Stop();
            Console.WriteLine(sw.ElapsedMilliseconds);
            Console.ReadLine();
        }
コード例 #21
0
 public ActivityAction Get(uint action_id)
 {
     ///
     return(ActivityActions.GetById(action_id, true));
 }
コード例 #22
0
        private static void GetActivitiesFromServer()
        {
            // var ccc = Comments.GetForComment(861);
            // LikesCommentsHandler lch = new LikesCommentsHandler(3, new RequestParams() { action_id = 37409 });
            // lch.Execute();
            //    LikesHandler ulike = new LikesHandler(3, new RequestParams() { action_id = 37072 });
            //    ulike.Execute();

            var cl = Likes.GetByResourceId(29846);

            //LikesCommentsHandler lch = new LikesCommentsHandler(3, new RequestParams() { action_id = 28869 , viewAllComments = "1" });
            //lch.Execute();
            // var u = Users.GetById(3);
            //var s = Storages.GetByFileId(u.photo_id);
            // Dictionary<string, object> apar = new Dictionary<string, object>();
            // apar["action_id"] = "18021";// "17998";
            // ViewHandler vh = new ViewHandler(3, new RequestParams(), apar);
            // vh.Execute();
            //RemoveActivityHandler rh = new RemoveActivityHandler(3, new RequestParams() { action_id = 20811 });
            //rh.Execute();
            //  PostHandler ph = new PostHandler(339, new RequestParams() { action_id = 31633 });
            // ph.Execute();

            //var x = CoreSettings.Get("core.iframely.secretIframelyKey");//All().Where(s => s.Key.Contains("iframe")).ToArray();
            using (var wc = new WebClient())
            {
                //var photo = AlbumPhotos.GetById(2410);
                //var link = CoreLinks.GetById(12095);
                // var video = Videos.GetById(748);
                //var refs = ActivityActions.GetByObjectId(8005, "activity_action").ToArray();
                //SourceData han = SourcesMap.Instance.GetSource(368, "user");
                // var hanFeed = han.ActivityFeed.Feed;



                uint aid      = 29846;// 26864;// 26843;
                var  activity = ActivityActions.GetById(aid);
                var  a        = new KoobecaFeedController.BL.Activity(activity);
                var  wrapper  = new FeedWrapper(a, 3, "user", false);
                var  res      = JsonConvert.SerializeObject(wrapper, Newtonsoft.Json.Formatting.None,
                                                            new JsonSerializerSettings
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
                var ourFeeds = new List <FeedWrapper>();

                //FeedController.Instance.AddLike(3, activity.action_id);
                //FeedController.Instance.RemoveLike(3, activity.action_id);
                var sb = new StringBuilder();
                //foreach (var feed in json.body.data)
                //{
                //    uint action_id = feed.feed.action_id;
                //    sb.AppendLine(action_id.ToString());
                //    var rawActivity = ActivityActions.GetByID(action_id);
                //    if (action_id == aid) {
                //        if (rawActivity != null)
                //        {
                //            sb.AppendLine(action_id.ToString());
                //            ourFeeds.Add(new FeedWrapper(new KoobecaFeedController.BL.Activity(rawActivity)));
                //        }
                //    }
                //}
                var str    = sb.ToString();
                var result = JsonConvert.SerializeObject(new ResponseBody(ourFeeds.ToArray(), 0, 0, 50), Newtonsoft.Json.Formatting.None,
                                                         new JsonSerializerSettings
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
            }
        }
コード例 #23
0
ファイル: ActivityHandler.cs プロジェクト: sharons74/koobeca
 protected void UpdateActionInDB(ActivityAction rawActivity)
 {
     ActivityActions.Update(rawActivity);
 }