コード例 #1
0
        protected override IEnumerable<CollectedItem> collectDataForSystemItem(ItemType systemItem)
        {
            if (systemItem.status.Equals(StatusEnumeration.notcollected))
            {
                var userToBeCollected = ((user_item)systemItem).user.Value;
                try
                {
                    var collectedUser = this.WindowsAccountProvider.GetUserByName(userToBeCollected);
                    systemItem = new user_item()
                    {
                        status = StatusEnumeration.exists,
                        user = OvalHelper.CreateItemEntityWithStringValue(collectedUser.Name),
                        enabled = OvalHelper.CreateBooleanEntityItemFromBoolValue((bool)collectedUser.Enabled),
                    };
                    
                    var userGroups = this.WindowsAccountProvider.GetUserGroups(userToBeCollected, AccountSearchReturnType.Name);
                    if (userGroups.Count() > 0)
                        ((user_item)systemItem).group = userGroups.Select(grp => new EntityItemStringType() { Value = grp }).ToArray();
                    else
                        ((user_item)systemItem).group = new EntityItemStringType[] { new EntityItemStringType() { status = StatusEnumeration.doesnotexist } };
                }
                catch (WindowsUserNotFound)
                {
                    systemItem.status = StatusEnumeration.doesnotexist;
                    ((user_item)systemItem).user.status = systemItem.status;
                }
            }

            return new ItemTypeHelper().CreateCollectedItemsWithOneItem(systemItem, BuildExecutionLog());
        }
コード例 #2
0
        private user_item CreateUserItem(StatusEnumeration itemStatus)
        {
            var newUserItem = 
                new user_item() 
                { 
                    status = itemStatus, 
                    user = OvalHelper.CreateItemEntityWithStringValue(EVERYONE_USER) 
                };

            if (itemStatus.Equals(StatusEnumeration.exists))
            {
                newUserItem.enabled = OvalHelper.CreateBooleanEntityItemFromBoolValue(true);
                newUserItem.group = new EntityItemStringType[] { OvalHelper.CreateItemEntityWithStringValue("g1") };
            }

            return newUserItem;
        }
コード例 #3
0
 private void AssertCollectedUserItemEntities(
     user_item collectedItem, string expectedName, string expectedEnabled, params string[] expectedGroups)
 {
     ItemTypeEntityChecker.AssertItemTypeEntity(collectedItem.user, expectedName, "user");
     ItemTypeEntityChecker.AssertItemTypeEntity(collectedItem.enabled, expectedEnabled, "enabled");
     Assert.AreEqual(expectedGroups.Count(), collectedItem.group.Count(), "Unexpected amount of group was found.");
     for(int i = 0; i < expectedGroups.Count(); i++)
         ItemTypeEntityChecker.AssertItemTypeEntity(collectedItem.group.ElementAt(i), expectedGroups.ElementAt(i), "group");
 }