Example #1
0
        ///<summary>
        ///Maps properties from UserConnectionDb object to EntityORM object
        ///</summary>
        public static EntityORM Map(UsersConnectionDb userConnection, HashSet <string> attributes)
        {
            EntityORM entity = new EntityORM();

            foreach (string attribute in attributes)
            {
                object value = null;    // attribute value

                switch (attribute)
                {
                case "AREFRIENDS":
                    value = (userConnection.AreFriends) ? "\'y\'" : "\'n\'";
                    break;

                case "BLACKLISTED":
                    value = (userConnection.BlackListed) ? "\'y\'": "\'n\'";
                    break;

                case "IDUSER1":
                    value = $"\'{ userConnection.IdUser1}\'";
                    break;

                case "IDUSER2":
                    value = $"\'{userConnection.IdUser2}\'";
                    break;

                default:
                    break;
                }

                entity.attributeValue.Add(attribute, value);
            }

            return(entity);
        }
        public bool Unsubscribe(UsersConnectionDb usersConnection)
        {
            var where_attributes = new Dictionary <string, object>()
            {
                { "IDUSER1", usersConnection.IdUser1 },
                { "IDUSER2", usersConnection.IdUser2 }
            };

            bool isUnsubscribed = Delete(table, attributes, where_attributes);

            UsersConnectionDb symmetricConnection = new UsersConnectionDb()
            {
                IdUser1 = usersConnection.IdUser2, IdUser2 = usersConnection.IdUser1
            };

            if (ConnectionExists(symmetricConnection))
            {
                where_attributes["IDUSER1"]    = symmetricConnection.IdUser1;
                where_attributes["IDUSER2"]    = symmetricConnection.IdUser2;
                symmetricConnection.AreFriends = false;

                EntityORM symmetricConnection_newTyped = Mapping.EntityMapping.Map(symmetricConnection, attributes);

                // Making sure that ID value is not touched.
                symmetricConnection_newTyped.attributeValue.Remove("ID");

                Update(table, attributes, where_attributes, symmetricConnection_newTyped);
            }

            return(isUnsubscribed);
        }
Example #3
0
        ///<summary>
        ///Maps properties from EntityORM object to UseConnectionrDb object
        ///</summary>
        public static void Map(EntityORM entity, out UsersConnectionDb userConnection)
        {
            userConnection = new UsersConnectionDb();

            foreach (KeyValuePair <string, object> aV in entity.attributeValue)
            {
                switch (aV.Key)        // attribute
                {
                case "ID":
                    userConnection.Id = Convert.ToInt64(aV.Value);
                    break;

                case "IDUSER1":
                    userConnection.IdUser1 = Convert.ToInt64(aV.Value);
                    break;

                case "IDUSER2":
                    userConnection.IdUser2 = Convert.ToInt64(aV.Value);
                    break;

                case "AREFRIENDS":
                    userConnection.AreFriends = ((string)aV.Value == "y") ? true : false;
                    break;

                case "BLACKLISTED":
                    userConnection.BlackListed = ((string)aV.Value == "y") ? true : false;
                    break;

                default:
                    break;
                }
            }
        }
Example #4
0
        public bool UnbanUser(UsersConnection usersConnection)
        {
            UsersConnectionDb usersConnection_newTyped = mapper.Map(usersConnection);

            bool isUnbanned = userConnectionsDAO.UnbanUser(usersConnection_newTyped);

            return(isUnbanned);
        }
Example #5
0
        public bool Unsubscribe(UsersConnection usersConnection)
        {
            UsersConnectionDb usersConnection_newTyped = mapper.Map(usersConnection);

            bool isUnsubscribed = userConnectionsDAO.Unsubscribe(usersConnection_newTyped);

            return(isUnsubscribed);
        }
Example #6
0
        public bool CreateSubscription(UsersConnection userConnections)
        {
            UsersConnectionDb userConnections_newType = mapper.Map(userConnections);

            bool isCreated = (userConnectionsDAO.CreateConnection(userConnections_newType) == true);

            return(isCreated);
        }
        public bool UnbanUser(UsersConnectionDb usersConnection)
        {
            var where_attributes = new Dictionary <string, object>()
            {
                { "IDUSER1", usersConnection.IdUser1 },
                { "IDUSER2", usersConnection.IdUser2 }
            };

            bool isUnbanned = Delete(table, attributes, where_attributes);

            return(isUnbanned);
        }
        private bool ConnectionExists(UsersConnectionDb usersConnection)
        {
            var where_attributes = new Dictionary <string, object>()
            {
                { "IDUSER1", usersConnection.IdUser1 },
                { "IDUSER2", usersConnection.IdUser2 }
            };


            EntityORM usersConnection_newTyped = Get(table, attributes, where_attributes);

            return(usersConnection_newTyped != null);
        }
        public bool CreateConnection(UsersConnectionDb usersConnection)
        {
            if (ConnectionExists(usersConnection))
            {
                return(false);
            }

            bool isCreated = false;

            UsersConnectionDb symmetricConnection = new UsersConnectionDb()
            {
                IdUser1 = usersConnection.IdUser2, IdUser2 = usersConnection.IdUser1
            };
            var where_attributes = new Dictionary <string, object>()
            {
                { "IDUSER1", symmetricConnection.IdUser2 },
                { "IDUSER2", symmetricConnection.IdUser1 }
            };


            EntityORM entity = Get(table, attributes, where_attributes);

            if (entity != null)
            {
                if ((bool)entity.attributeValue["BLACKLISTED"])
                {
                    return(isCreated);
                }

                where_attributes = new Dictionary <string, object>()
                {
                    { "IDUSER1", usersConnection.IdUser1 },
                    { "IDUSER2", usersConnection.IdUser2 }
                };

                symmetricConnection.AreFriends = true;

                EntityORM symmetricConnection_newTyped = Mapping.EntityMapping.Map(symmetricConnection, attributes);

                Update(table, attributes, where_attributes, symmetricConnection_newTyped);

                usersConnection.AreFriends = true;
            }

            isCreated = Save(usersConnection);

            return(isCreated);
        }
Example #10
0
        public UsersConnectionDb Map(UsersConnection userConnection)
        {
            UsersConnectionDb userConnection_newType = new UsersConnectionDb();

            #region Transfer main attributes

            userConnection_newType.Id          = userConnection.Id;
            userConnection_newType.IdUser1     = userConnection.User1.Id;
            userConnection_newType.IdUser2     = userConnection.User2.Id;
            userConnection_newType.AreFriends  = userConnection.AreFriends;
            userConnection_newType.BlackListed = userConnection.BlackListed;


            #endregion

            return(userConnection_newType);
        }
Example #11
0
        public bool CreateConnection(UsersConnectionDb usersConnection)
        {
            if (ConnectionExists(usersConnection))
            {
                return(false);
            }

            bool isCreated = false;

            UsersConnectionDb symmetricConnection = new UsersConnectionDb()
            {
                IdUser1 = usersConnection.IdUser2, IdUser2 = usersConnection.IdUser1
            };
            var where_attributes = new Dictionary <string, object>()
            {
                { "IDUSER1", symmetricConnection.IdUser1 },
                { "IDUSER2", symmetricConnection.IdUser2 }
            };


            EntityORM entity = Get(table, attributes, where_attributes);

            if (entity != null)
            {
                if (DbTools.ProcessBoolean(entity.attributeValue["BLACKLISTED"]))
                {
                    return(isCreated);
                }

                symmetricConnection.AreFriends = true;

                EntityORM symmetricConnection_newTyped = Mapping.EntityMapping.Map(symmetricConnection, attributes);

                // Making sure that ID value is not touched.
                symmetricConnection_newTyped.attributeValue.Remove("ID");

                Update(table, attributes, where_attributes, symmetricConnection_newTyped);

                usersConnection.AreFriends = true;
            }

            isCreated = Save(usersConnection);

            return(isCreated);
        }
Example #12
0
        public bool Save(UsersConnectionDb usersConnection)
        {
            bool isSaved = false;

            EntityORM entity = EntityMapping.Map(usersConnection, attributes);

            // Making sure that ID value is not touched.
            entity.attributeValue.Remove("ID");

            long userConnection_id = crud.Create(table, idColumn, entity);

            if (userConnection_id != 0)
            {
                logger.Info($"UsersConnection with id = {userConnection_id} was created");
                isSaved = true;
            }

            return(isSaved);
        }
Example #13
0
        public bool BanUser(UsersConnectionDb usersConnection)
        {
            bool isBanned       = false;
            bool isUnsubscribed = false;
            UsersConnectionDb symmetricConnection = new UsersConnectionDb()
            {
                IdUser1 = usersConnection.IdUser2, IdUser2 = usersConnection.IdUser1
            };

            var where_attributes = new Dictionary <string, object>()
            {
                { "IDUSER1", usersConnection.IdUser1 },
                { "IDUSER2", usersConnection.IdUser2 }
            };

            if (ConnectionExists(symmetricConnection))
            {
                isUnsubscribed = Unsubscribe(symmetricConnection);
            }

            if (ConnectionExists(usersConnection))
            {
                if (isUnsubscribed)
                {
                    usersConnection.AreFriends = false;
                }

                EntityORM usersConnection_newTyped = Mapping.EntityMapping.Map(usersConnection, attributes);

                // Making sure that ID value is not touched.
                usersConnection_newTyped.attributeValue.Remove("ID");

                isBanned = Update(table, attributes, where_attributes, usersConnection_newTyped);
            }
            else
            {
                isBanned = Save(usersConnection);
            }

            return(isBanned);
        }
        public bool BanUser(UsersConnectionDb usersConnection)
        {
            bool isBanned       = false;
            bool isUnsubscribed = false;
            UsersConnectionDb symmetricConnection = new UsersConnectionDb()
            {
                IdUser1 = usersConnection.IdUser2, IdUser2 = usersConnection.IdUser1
            };

            var where_attributes = new Dictionary <string, object>()
            {
                { "IDUSER1", usersConnection.IdUser1 },
                { "IDUSER2", usersConnection.IdUser2 },
                { "BLACKLISTED", usersConnection.BlackListed }
            };

            if (ConnectionExists(symmetricConnection))
            {
                isUnsubscribed = Unsubscribe(symmetricConnection);
            }

            if (ConnectionExists(usersConnection))
            {
                if (isUnsubscribed)
                {
                    usersConnection.AreFriends = false;
                }

                EntityORM usersConnection_newTyped = Mapping.EntityMapping.Map(usersConnection, attributes);
                isBanned = Update(table, attributes, where_attributes, usersConnection_newTyped);
            }
            else
            {
                isBanned = Save(usersConnection);
            }

            return(isBanned);
        }