Пример #1
0
        public static Models.ValidationResult ValidateDistributionPoint(Models.DistributionPoint distributionPoint, bool isNewDistributionPoint)
        {
            var validationResult = new Models.ValidationResult();



            if (Convert.ToBoolean(distributionPoint.IsPrimary))
            {
                if (!distributionPoint.PhysicalPath.Trim().EndsWith(Path.DirectorySeparatorChar.ToString()))
                {
                    distributionPoint.PhysicalPath += Path.DirectorySeparatorChar;
                }
            }

            if (string.IsNullOrEmpty(distributionPoint.DisplayName) || distributionPoint.DisplayName.Contains(" "))
            {
                validationResult.IsValid = false;
                validationResult.Message = "Distribution Point Name Is Not Valid";
                return(validationResult);
            }

            if (isNewDistributionPoint)
            {
                var primaryDp = GetPrimaryDistributionPoint();
                if (primaryDp != null && Convert.ToBoolean(distributionPoint.IsPrimary))
                {
                    validationResult.IsValid = false;
                    validationResult.Message = "There Can Only Be One Primary Distribution Point";
                    return(validationResult);
                }

                using (var uow = new DAL.UnitOfWork())
                {
                    if (uow.DistributionPointRepository.Exists(h => h.DisplayName == distributionPoint.DisplayName))
                    {
                        validationResult.IsValid = false;
                        validationResult.Message = "This Distribution Point Already Exists";
                        return(validationResult);
                    }
                }
            }
            else
            {
                using (var uow = new DAL.UnitOfWork())
                {
                    var originalDistributionPoint = uow.DistributionPointRepository.GetById(distributionPoint.Id);
                    if (originalDistributionPoint.DisplayName != distributionPoint.DisplayName)
                    {
                        if (uow.DistributionPointRepository.Exists(h => h.DisplayName == distributionPoint.DisplayName))
                        {
                            validationResult.IsValid = false;
                            validationResult.Message = "This Distribution Point Already Exists";
                            return(validationResult);
                        }
                    }
                }
            }

            return(validationResult);
        }
Пример #2
0
        public static Models.ValidationResult AddDistributionPoint(Models.DistributionPoint distributionPoint)
        {
            using (var uow = new DAL.UnitOfWork())
            {
                var validationResult = ValidateDistributionPoint(distributionPoint, true);
                if (validationResult.IsValid)
                {
                    uow.DistributionPointRepository.Insert(distributionPoint);
                    validationResult.IsValid = uow.Save();
                }

                return(validationResult);
            }
        }
Пример #3
0
        public static Models.DistributionPoint GetDistributionPoint(Models.Computer computer)
        {
            Models.DistributionPoint dp = null;

            if (computer.RoomId != -1)
            {
                var room = BLL.Room.GetRoom(computer.RoomId);
                if (room != null)
                {
                    dp =
                        DistributionPoint.GetDistributionPoint(room.DistributionPointId);
                }
            }
            else if (computer.BuildingId != -1)
            {
                var building = BLL.Building.GetBuilding(computer.BuildingId);
                if (building != null)
                {
                    dp =
                        DistributionPoint.GetDistributionPoint(building.DistributionPointId);
                }
            }
            else if (computer.SiteId != -1)
            {
                var site = BLL.Site.GetSite(computer.SiteId);
                if (site != null)
                {
                    dp =
                        DistributionPoint.GetDistributionPoint(site.DistributionPointId);
                }
            }

            if (dp == null)
            {
                dp = DistributionPoint.GetPrimaryDistributionPoint();
            }

            return(dp);
        }