Example #1
0
 public static List<Group> GetAllGroups(MembershipParameters groupParams)
 {
     NameValueCollection parameters = new NameValueCollection();
     Yammer.Utility.AddMembershipParams(parameters, groupParams);
     string response = Yammer.HttpUtility.Get(Resources.YAMMER_GROUP_LIST,parameters);
     return Group.GetAllGroups(response);
 }
Example #2
0
 /// <summary>
 /// Retrieves list of users in network 
 /// </summary>
 /// <param name="userParams"></param>
 /// <returns></returns>
 public static List<User> GetAllUsers(MembershipParameters userParams)
 {
     NameValueCollection parameters = new NameValueCollection();
     Yammer.Utility.AddMembershipParams(parameters, userParams);
     string response = Yammer.HttpUtility.Get(Resources.YAMMER_USERS_ALL, parameters);
     return User.GetAllUsers(response);
 }
Example #3
0
        private void GetUsers()
        {
            Dictionary<string, DirectoryInfo> appData = Yammer.Utility.GetAppData();
            List<Yammer.User> users = null;
            string path = appData["data"].FullName + "\\users.yam";

            if (System.IO.File.Exists(path))
            {
                XmlSerializer serializer = new XmlSerializer(typeof(List<Yammer.User>));
                TextReader reader = new StreamReader(path);
                users = (List<Yammer.User>)serializer.Deserialize(reader);
                reader.Close();
            }
            else
            {
                MembershipParameters mp1 = new MembershipParameters();
                mp1.PageId = 1;
                users = Yammer.User.GetAllUsers(mp1);
                if (users.Count > 49)
                {
                    bool cont = true;
                    int i = 2;
                    while (cont)
                    {
                        MembershipParameters mp = new MembershipParameters();
                        mp.PageId = i;
                        List<User> userPage = Yammer.User.GetAllUsers(mp);
                        if (userPage.Count > 0)
                        {
                            users.AddRange(userPage.ToArray());
                            i++;
                            cont = true;
                        }
                        else
                            cont = false;
                    }
                    
                    
                }
                TextWriter writer = new StreamWriter(path);
                XmlSerializer serializer = new XmlSerializer(typeof(List<Yammer.User>));
                serializer.Serialize(writer, users);
                writer.Close();
            }

            this.Cache.Add("users", users, null, DateTime.Now.AddHours(6), System.Web.Caching.Cache.NoSlidingExpiration, CacheItemPriority.Normal, null);
        }
Example #4
0
        public static void AddMembershipParams(NameValueCollection parameters, MembershipParameters groupParams)
        {
            PropertyInfo[] pic = groupParams.GetType().GetProperties();
            foreach (PropertyInfo pi in pic)
            {
                object value = pi.GetValue(groupParams, null);
                bool include = false;
                if (value != null)
                {
                    string typeName = value.GetType().Name;
                    switch (typeName)
                    {
                        case "Int32":
                            if ((int)value > 0)
                                include = true;
                            break;
                        case "SortBy":
                            if ((SortBy)value != SortBy.NONE)
                                include = true;
                            break;
                        default:
                            include = true;
                            break;
                    }


                    if (include)
                    {
                        MembershipParameterAttribute name = (MembershipParameterAttribute)MembershipParameterAttribute.GetCustomAttribute(pi, typeof(MembershipParameterAttribute));
                        parameters.Add(name.Name, pi.GetValue(groupParams, null).ToString());
                    }
                }
            }


        }