public AclPackage UpdateAcl(AclIdentity aclIdentity, String userName)
        {
            List <AclIdentity> idList = new List <AclIdentity>();

            idList.Add(aclIdentity);
            AclPackage aclPackage = accessControlService.Get(idList);

            AclEntry aclEntry = new AclEntry();

            aclEntry.Accessor = userName;
            Permission basicDeletePermission = new Permission();

            basicDeletePermission.Name = Permission.DELETE;
            basicDeletePermission.Type = PermissionType.BASIC;
            aclEntry.AccessType        = AccessType.PERMIT;
            List <Permission> permissionList = new List <Permission>();

            permissionList.Add(basicDeletePermission);
            aclEntry.Permissions = permissionList;

            Acl acl = aclPackage.Acls[0];

            acl.Entries.Add(aclEntry);

            return(accessControlService.Update(aclPackage));
        }
        public void testAclCreate()
        {
            Console.WriteLine("\nTesting Acl create...");
            AclIdentity aclIdentity = null;

            try
            {
                AclPackage aclPackage = accessControlServiceDemo.CreateAcl(
                    DefaultRepository, userName, "MyAcl"
                    + System.DateTime.Now.Ticks);
                aclIdentity = aclPackage.Acls[0].Identity;
                Console.WriteLine("Created acl " + aclIdentity.Name);
                Console.WriteLine("testAclCreate completed");
            }
            catch (FaultException <SerializableException> ex)
            {
                Console.WriteLine(String.Format("Got FaultException[{0}] with message: {1}\n", ex.Detail, ex.Message));
            }
            catch (Exception exx)
            {
                Console.WriteLine(exx.StackTrace);
            }
            finally
            {
                if (aclIdentity != null)
                {
                    sampleContentManager.DeleteSampleAcl(aclIdentity);
                }
            }
        }
        public AclPackage CreateAcl(String repoName, String userName, String aclName)
        {
            AclIdentity aclIdentity = new AclIdentity();

            aclIdentity.RepositoryName = repoName;
            aclIdentity.Domain         = userName;
            aclIdentity.Name           = aclName;

            Permission basicReadPermission = new Permission();

            basicReadPermission.Name = Permission.READ;
            basicReadPermission.Type = PermissionType.BASIC;

            Permission basicDeletePermission = new Permission();

            basicDeletePermission.Name = Permission.DELETE;
            basicDeletePermission.Type = PermissionType.BASIC;

            List <AclEntry> entryList = new List <AclEntry>();

            AclEntry aclEntry = new AclEntry();

            aclEntry.AccessType = AccessType.PERMIT;
            aclEntry.Accessor   = "dm_world";
            List <Permission> permissionList = new List <Permission>();

            permissionList.Add(basicReadPermission);
            aclEntry.Permissions = permissionList;

            AclEntry aclEntry1 = new AclEntry();

            aclEntry1.AccessType = AccessType.PERMIT;
            aclEntry1.Accessor   = "dm_owner";
            List <Permission> permissionList1 = new List <Permission>();

            permissionList1.Add(basicDeletePermission);
            aclEntry1.Permissions = permissionList1;

            entryList.Add(aclEntry);
            entryList.Add(aclEntry1);

            Acl acl = new Acl();

            acl.Identity    = aclIdentity;
            acl.Description = "a test acl" + System.DateTime.Now.Ticks;
            // acl.setType(AclType.REGULAR); // defaults to REGULAR
            // acl.setVisibility(AclVisibility.PRIVATE); // defaults to PRIVATE
            acl.Entries = entryList;

            AclPackage aclPackage = new AclPackage();
            List <Acl> aclList    = new List <Acl>();

            aclList.Add(acl);
            aclPackage.Acls = aclList;

            return(accessControlService.Create(aclPackage));
        }
       	public AclPackage CreateAcl(String repoName, String userName, String aclName)
	{
		AclIdentity aclIdentity = new AclIdentity();
		aclIdentity.RepositoryName = repoName;
		aclIdentity.Domain = userName;
		aclIdentity.Name = aclName;

		Permission basicReadPermission = new Permission();
		basicReadPermission.Name = Permission.READ;
		basicReadPermission.Type = PermissionType.BASIC;

		Permission basicDeletePermission = new Permission();
		basicDeletePermission.Name = Permission.DELETE;
		basicDeletePermission.Type = PermissionType.BASIC;

		List<AclEntry> entryList = new List<AclEntry>();

		AclEntry aclEntry = new AclEntry();
		aclEntry.AccessType = AccessType.PERMIT;
		aclEntry.Accessor = "dm_world";
		List<Permission> permissionList = new List<Permission>();
		permissionList.Add(basicReadPermission);
		aclEntry.Permissions = permissionList;

		AclEntry aclEntry1 = new AclEntry();
		aclEntry1.AccessType = AccessType.PERMIT;
		aclEntry1.Accessor = "dm_owner";
		List<Permission> permissionList1 = new List<Permission>();
		permissionList1.Add(basicDeletePermission);
		aclEntry1.Permissions = permissionList1;

		entryList.Add(aclEntry);
		entryList.Add(aclEntry1);

		Acl acl = new Acl();
		acl.Identity = aclIdentity;
		acl.Description = "a test acl" + System.DateTime.Now.Ticks;
		// acl.setType(AclType.REGULAR); // defaults to REGULAR
		// acl.setVisibility(AclVisibility.PRIVATE); // defaults to PRIVATE
		acl.Entries = entryList;

		AclPackage aclPackage = new AclPackage();
		List<Acl> aclList = new List<Acl>();
		aclList.Add(acl);
		aclPackage.Acls = aclList;

		return accessControlService.Create(aclPackage);
	}
        public void testAclQuery()
        {
            Console.WriteLine("\nTesting Acl query...");
            AclIdentity aclIdentity = null;

            try
            {
                String     aclName           = "MyAcl" + System.DateTime.Now.Ticks;
                AclPackage createdAclPackage = accessControlServiceDemo.CreateAcl(
                    DefaultRepository, userName, aclName);
                aclIdentity = createdAclPackage.Acls[0].Identity;
                Console.WriteLine("Created acl: "
                                  + aclIdentity.Name);
                AclPackage aclPackage = accessControlServiceDemo.GetOwnerPrivateAcls(
                    userName, DefaultRepository);
                List <Acl> aclList = aclPackage.Acls;
                if (aclList == null)
                {
                    Console.WriteLine("Query returned no results.");
                    return;
                }
                Console.WriteLine("Contents of AclPackage: ");
                foreach (Acl acl in aclList)
                {
                    Console.WriteLine(aclPackage.Acls[0].Identity.Name);
                }
                Console.WriteLine("testAclDelete completed");
            }
            catch (FaultException <SerializableException> ex)
            {
                Console.WriteLine(String.Format("Got FaultException[{0}] with message: {1}\n", ex.Detail, ex.Message));
            }
            catch (Exception exx)
            {
                Console.WriteLine(exx.StackTrace);
            }
            finally
            {
                if (aclIdentity != null)
                {
                    sampleContentManager.DeleteSampleAcl(aclIdentity);
                }
            }
        }