类javax.naming.directory.ModificationItem源码实例Demo

下面列出了怎么用javax.naming.directory.ModificationItem的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testRemoveAttributeValueInUpdateModeOtherAndSameValueExistsInUpdatedAttrs()
		throws NamingException {
	tested.setUpdateMode(true);
	tested.setAttributeValues("abc", new String[] { "321", "123" });

	// Perform test
	tested.removeAttributeValue("abc", "123");

	assertThat(tested.getAttributes().get("abc")).isNull();

	ModificationItem[] modificationItems = tested.getModificationItems();
	assertThat(modificationItems.length).isEqualTo(1);
	Attribute modificationAttribute = modificationItems[0].getAttribute();
	assertThat(modificationAttribute.getID()).isEqualTo("abc");
	assertThat(modificationAttribute.size()).isEqualTo(1);
}
 
源代码2 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testRemoveMultiAttribute() throws Exception {
	final Attributes fixtureAttrs = new BasicAttributes();
	Attribute abc = new BasicAttribute("abc");
	abc.add("123");
	abc.add("456");
	fixtureAttrs.put(abc);
	class TestableDirContextAdapter extends DirContextAdapter {
		public TestableDirContextAdapter() {
			super(fixtureAttrs, null);
			setUpdateMode(true);
		}
	}
	tested = new TestableDirContextAdapter();

	tested.setUpdateMode(true);
	tested.setAttributeValues("abc", new String[] {});

	ModificationItem[] mods = tested.getModificationItems();
	assertThat(mods.length).isEqualTo(1);
	assertThat(mods[0].getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE);
	Attribute attr = mods[0].getAttribute();
	assertThat((String) attr.getID()).isEqualTo("abc");
	assertThat(attr.size()).isEqualTo(0);
}
 
源代码3 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testAddAttributeValueInUpdateModeAttributeWithOtherValueExistsInUpdAttrs()
		throws NamingException {
	tested.setUpdateMode(true);
	tested.setAttributeValue("abc", "321");

	// Perform test
	tested.addAttributeValue("abc", "123");

	Attributes attrs = tested.getAttributes();
	assertThat(attrs.get("abc")).isNull();

	ModificationItem[] modificationItems = tested.getModificationItems();
	assertThat(modificationItems.length).isEqualTo(1);
	Attribute attribute = modificationItems[0].getAttribute();
	assertThat(attribute.getID()).isEqualTo("abc");
	assertThat(attribute.get(0)).isEqualTo("321");
	assertThat(attribute.get(1)).isEqualTo("123");
}
 
源代码4 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testChangeMultiAttribute_RemoveTwoValues() throws Exception {
	final Attributes fixtureAttrs = new BasicAttributes();
	Attribute multi = new BasicAttribute("abc");
	multi.add("123");
	multi.add("qwe");
	multi.add("rty");
	fixtureAttrs.put(multi);
	class TestableDirContextAdapter extends DirContextAdapter {
		public TestableDirContextAdapter() {
			super(fixtureAttrs, null);
			setUpdateMode(true);
		}
	}
	tested = new TestableDirContextAdapter();
	assertThat(tested.isUpdateMode()).isTrue();
	tested.setAttributeValues("abc", new String[] { "123" });

	ModificationItem[] modificationItems = tested.getModificationItems();
	assertThat(modificationItems.length).isEqualTo(1);
    assertThat(modificationItems[0].getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE);
	assertThat(modificationItems[0].getAttribute().get(0)).isEqualTo("qwe");
	assertThat(modificationItems[0].getAttribute().get(1)).isEqualTo("rty");
}
 
源代码5 项目: fess   文件: LdapManager.java
public boolean changePassword(final String username, final String password) {
    if (!fessConfig.isLdapAdminEnabled(username)) {
        return false;
    }

    final Supplier<Hashtable<String, String>> adminEnv = this::createAdminEnv;
    final String userDN = fessConfig.getLdapAdminUserSecurityPrincipal(username);
    search(fessConfig.getLdapAdminUserBaseDn(), fessConfig.getLdapAdminUserFilter(username), null, adminEnv, result -> {
        if (!result.isEmpty()) {
            final List<ModificationItem> modifyList = new ArrayList<>();
            modifyReplaceEntry(modifyList, "userPassword", password);
            modify(userDN, modifyList, adminEnv);
        } else {
            throw new LdapOperationException("User is not found: " + username);
        }
    });
    return true;
}
 
@Test
public void testGetCompensatingModificationItem_RemoveFullExistingAttribute()
        throws NamingException {
    BasicAttribute attribute = new BasicAttribute("someattr");
    attribute.add("value1");
    attribute.add("value2");
    Attributes attributes = new BasicAttributes();
    attributes.put(attribute);

    ModificationItem originalItem = new ModificationItem(
            DirContext.REMOVE_ATTRIBUTE, new BasicAttribute("someattr"));

    // Perform test
    ModificationItem result = tested.getCompensatingModificationItem(
            attributes, originalItem);

    // Verify result
    assertThat(result.getModificationOp()).isEqualTo(DirContext.ADD_ATTRIBUTE);
    Attribute resultAttribute = result.getAttribute();
    assertThat(resultAttribute.getID()).isEqualTo("someattr");
    Object object = resultAttribute.get(0);
    assertThat(object).isEqualTo("value1");
    assertThat(resultAttribute.get(1)).isEqualTo("value2");
}
 
源代码7 项目: spring-ldap   文件: LdapTemplateTest.java
@Test
public void testUpdateWithIdSpecified() throws NamingException {
    when(contextSourceMock.getReadOnlyContext()).thenReturn(dirContextMock);
    when(contextSourceMock.getReadWriteContext()).thenReturn(dirContextMock);
    LdapName expectedName = LdapUtils.newLdapName("ou=someOu");

    ModificationItem[] expectedModificationItems = new ModificationItem[0];
    DirContextOperations ctxMock = mock(DirContextOperations.class);
    when(ctxMock.getDn()).thenReturn(expectedName);
    when(ctxMock.isUpdateMode()).thenReturn(true);
    when(ctxMock.getModificationItems()).thenReturn(expectedModificationItems);

    Object expectedObject = new Object();
    when(odmMock.getId(expectedObject)).thenReturn(expectedName);
    when(odmMock.getCalculatedId(expectedObject)).thenReturn(null);

    when(dirContextMock.lookup(expectedName)).thenReturn(ctxMock);

    tested.update(expectedObject);

    verify(odmMock, never()).setId(expectedObject, expectedName);
    verify(odmMock).mapToLdapDataEntry(expectedObject, ctxMock);
    verify(dirContextMock).modifyAttributes(expectedName, expectedModificationItems);

    verify(dirContextMock, times(2)).close();
}
 
源代码8 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testAddAttributeValueInUpdateModeAttributeWithSameValueExistsInUpdAttrs()
		throws NamingException {
	tested.setUpdateMode(true);
	tested.setAttributeValue("abc", "123");

	// Perform test
	tested.addAttributeValue("abc", "123");

	Attributes attrs = tested.getAttributes();
	assertThat(attrs.get("abc")).isNull();

	ModificationItem[] modificationItems = tested.getModificationItems();
	assertThat(modificationItems.length).isEqualTo(1);
	Attribute attribute = modificationItems[0].getAttribute();
	assertThat(attribute.size()).isEqualTo(1);
	assertThat(attribute.getID()).isEqualTo("abc");
	assertThat(attribute.get()).isEqualTo("123");
}
 
源代码9 项目: MyVirtualDirectory   文件: ServerEntryUtils.java
/**
 * 
 * Convert a list of ModificationItemImpl to a list of 
 *
 * @param modificationImpls
 * @param atRegistry
 * @return
 * @throws LdapException
 */
public static List<Modification> convertToServerModification( List<ModificationItem> modificationItems,
    SchemaManager schemaManager ) throws LdapException
{
    if ( modificationItems != null )
    {
        List<Modification> modifications = new ArrayList<Modification>( modificationItems.size() );

        for ( ModificationItem modificationItem : modificationItems )
        {
            AttributeType attributeType = schemaManager.lookupAttributeTypeRegistry( modificationItem
                .getAttribute().getID() );
            modifications.add( toServerModification( modificationItem, attributeType ) );
        }

        return modifications;
    }
    else
    {
        return null;
    }
}
 
源代码10 项目: spring-ldap   文件: LdapTemplateTest.java
@Test
public void testUpdateWithIdCalculated() throws NamingException {
    when(contextSourceMock.getReadOnlyContext()).thenReturn(dirContextMock);
    when(contextSourceMock.getReadWriteContext()).thenReturn(dirContextMock);
    LdapName expectedName = LdapUtils.newLdapName("ou=someOu");

    ModificationItem[] expectedModificationItems = new ModificationItem[0];
    DirContextOperations ctxMock = mock(DirContextOperations.class);
    when(ctxMock.getDn()).thenReturn(expectedName);
    when(ctxMock.isUpdateMode()).thenReturn(true);
    when(ctxMock.getModificationItems()).thenReturn(expectedModificationItems);

    Object expectedObject = new Object();
    when(odmMock.getId(expectedObject)).thenReturn(null);
    when(odmMock.getCalculatedId(expectedObject)).thenReturn(expectedName);

    when(dirContextMock.lookup(expectedName)).thenReturn(ctxMock);

    tested.update(expectedObject);

    verify(odmMock).setId(expectedObject, expectedName);
    verify(odmMock).mapToLdapDataEntry(expectedObject, ctxMock);
    verify(dirContextMock).modifyAttributes(expectedName, expectedModificationItems);

    verify(dirContextMock, times(2)).close();
}
 
源代码11 项目: spring-ldap   文件: LdapTemplateTest.java
@Test
public void testModifyAttributes_NamingException() throws Exception {
	expectGetReadWriteContext();

	ModificationItem[] mods = new ModificationItem[0];

       javax.naming.LimitExceededException ne = new javax.naming.LimitExceededException();
       doThrow(ne).when(dirContextMock).modifyAttributes(nameMock, mods);

	try {
		tested.modifyAttributes(nameMock, mods);
		fail("LimitExceededException expected");
	}
	catch (LimitExceededException expected) {
		assertThat(true).isTrue();
	}

       verify(dirContextMock).close();
}
 
源代码12 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testRemoveDnAttributeSyntacticallyEqual() throws NamingException {
    BasicAttributes attributes = new BasicAttributes();
    attributes.put("uniqueMember", "cn=john doe,OU=company");

    DirContextAdapter tested = new DirContextAdapter(attributes, LdapUtils.newLdapName("cn=administrators, ou=groups"));
    tested.setUpdateMode(true);

    tested.removeAttributeValue("uniqueMember", LdapUtils.newLdapName("cn=john doe, ou=company"));
    ModificationItem[] modificationItems = tested.getModificationItems();
    assertThat(modificationItems.length).isEqualTo(1);

    ModificationItem modificationItem = modificationItems[0];
    assertThat(modificationItem.getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE);
    assertThat(modificationItem.getAttribute().getID()).isEqualTo("uniqueMember");
}
 
源代码13 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testChangeMultiAttributeOrderDoesMatter() throws Exception {
	final Attributes fixtureAttrs = new BasicAttributes();
	Attribute multi = new BasicAttribute("abc");
	multi.add("123");
	multi.add("qwe");
	fixtureAttrs.put(multi);
	class TestableDirContextAdapter extends DirContextAdapter {
		public TestableDirContextAdapter() {
			super(fixtureAttrs, null);
			setUpdateMode(true);
		}
	}
	tested = new TestableDirContextAdapter();
	assertThat(tested.isUpdateMode()).isTrue();
	tested.setAttributeValues("abc", new String[] { "qwe", "123" }, true);

	// change
	ModificationItem[] mods = tested.getModificationItems();
	assertThat(mods.length).isEqualTo(1);
	assertThat(mods[0].getModificationOp()).isEqualTo(DirContext.REPLACE_ATTRIBUTE);
	Attribute attr = mods[0].getAttribute();
	assertThat(attr.get(0)).isEqualTo("qwe");
	assertThat(attr.get(1)).isEqualTo("123");
}
 
源代码14 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testRemoveOneOfSeveralDnAttributeSyntacticallyEqual() throws NamingException {
    BasicAttributes attributes = new BasicAttributes();
    BasicAttribute attribute = new BasicAttribute("uniqueMember", "cn=john doe,OU=company");
    attribute.add("cn=jane doe, ou=company");
    attributes.put(attribute);

    DirContextAdapter tested = new DirContextAdapter(attributes, LdapUtils.newLdapName("cn=administrators, ou=groups"));
    tested.setUpdateMode(true);

    tested.removeAttributeValue("uniqueMember", LdapUtils.newLdapName("cn=john doe, ou=company"));
    ModificationItem[] modificationItems = tested.getModificationItems();
    assertThat(modificationItems.length).isEqualTo(1);

    ModificationItem modificationItem = modificationItems[0];
    assertThat(modificationItem.getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE);
    assertThat(modificationItem.getAttribute().getID()).isEqualTo("uniqueMember");
    assertThat(modificationItem.getAttribute().get()).isEqualTo("cn=john doe,OU=company");
}
 
源代码15 项目: projectforge-webapp   文件: LdapUserDao.java
public void deactivateUser(final DirContext ctx, final LdapUser user) throws NamingException
{
  log.info("Deactivate user: " + buildDn(null, user));
  final List<ModificationItem> modificationItems = new ArrayList<ModificationItem>();
  modificationItems.add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute("userPassword", null)));
  modificationItems.add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute("mail", DEACTIVATED_MAIL)));
  buildDn(null, user);
  modify(ctx, user, modificationItems);
  final String ou = user.getOrganizationalUnit();
  if (ou.startsWith(DEACTIVATED_SUB_CONTEXT2) == false) {
    // Move user to the sub-context "deactivated".
    final String newOu = LdapUtils.getOu(DEACTIVATED_SUB_CONTEXT, getOuBase());
    move(ctx, user, newOu);
    user.setOrganizationalUnit(newOu);
  }
}
 
@Test
public void testGetCompensatingModificationItem_AddNonExistingAttribute()
        throws NamingException {
    Attributes attributes = new BasicAttributes();

    BasicAttribute modificationAttribute = new BasicAttribute("someattr");
    modificationAttribute.add("newvalue1");
    modificationAttribute.add("newvalue2");
    ModificationItem originalItem = new ModificationItem(
            DirContext.ADD_ATTRIBUTE, modificationAttribute);

    // Perform test
    ModificationItem result = tested.getCompensatingModificationItem(
            attributes, originalItem);

    // Verify result
    assertThat(result.getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE);
    Attribute resultAttribute = result.getAttribute();
    assertThat(resultAttribute.getID()).isEqualTo("someattr");
    assertThat(resultAttribute.size()).isEqualTo(0);
}
 
源代码17 项目: spring-ldap   文件: LdapTemplateModifyITest.java
/**
 * Test written originally to verify that duplicates are allowed on ordered
 * attributes, but had to be changed since Apache DS seems to disallow
 * duplicates even for ordered attributes.
 */
@Test
public void testModifyAttributes_MultiValueAddDuplicateToOrdered() {
	BasicAttribute attr = new BasicAttribute("description", "Some other description", true); // ordered
	attr.add("Another description");
	// Commented out duplicate to make test work for Apache DS
	// attr.add("Some description");
	ModificationItem[] mods = new ModificationItem[1];
	mods[0] = new ModificationItem(DirContext.ADD_ATTRIBUTE, attr);

	tested.modifyAttributes(PERSON4_DN, mods);

	DirContextAdapter result = (DirContextAdapter) tested.lookup(PERSON4_DN);
       List<String> attributes = Arrays.asList(result.getStringAttributes("description"));
       assertThat(attributes).hasSize(3);
       assertThat(attributes.contains("Some other description")).isTrue();
       assertThat(attributes.contains("Another description")).isTrue();
       assertThat(attributes.contains("Some description")).isTrue();
}
 
源代码18 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testNoChangeMultiAttributeOrderDoesNotMatter() throws Exception {
	final Attributes fixtureAttrs = new BasicAttributes();
	Attribute multi = new BasicAttribute("abc");
	multi.add("123");
	multi.add("qwe");
	fixtureAttrs.put(multi);
	class TestableDirContextAdapter extends DirContextAdapter {
		public TestableDirContextAdapter() {
			super(fixtureAttrs, null);
			setUpdateMode(true);
		}
	}
	tested = new TestableDirContextAdapter();
	tested.setAttributeValues("abc", new String[] { "qwe", "123" });

	ModificationItem[] mods = tested.getModificationItems();
	assertThat(mods.length).isEqualTo(0);
	String[] modNames = tested.getNamesOfModifiedAttributes();
	assertThat(modNames.length).isEqualTo(0);
}
 
源代码19 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testChangeAttribute() throws Exception {
	final Attributes fixtureAttrs = new BasicAttributes();
	fixtureAttrs.put(new BasicAttribute("abc", "123"));
	class TestableDirContextAdapter extends DirContextAdapter {
		public TestableDirContextAdapter() {
			super(fixtureAttrs, null);
			setUpdateMode(true);
		}
	}
	tested = new TestableDirContextAdapter();
	tested.setAttributeValue("abc", "234"); // change

	ModificationItem[] mods = tested.getModificationItems();
	assertThat(mods.length).isEqualTo(1);
	assertThat(mods[0].getModificationOp()).isEqualTo(DirContext.REPLACE_ATTRIBUTE);
	Attribute attr = mods[0].getAttribute();
	assertThat((String) attr.getID()).isEqualTo("abc");
	assertThat((String) attr.get()).isEqualTo("234");
}
 
源代码20 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testRemoveAttributeValueInUpdateModeSameValueExistsInOrigAttrs() {
	tested.setAttribute(new BasicAttribute("abc", "123"));
	tested.setUpdateMode(true);

	// Perform test
	tested.removeAttributeValue("abc", "123");

	ModificationItem[] modificationItems = tested.getModificationItems();
	assertThat(modificationItems.length).isEqualTo(1);
	Attribute modificationAttribute = modificationItems[0].getAttribute();
	assertThat(modificationAttribute.getID()).isEqualTo("abc");
	assertThat(modificationAttribute.size()).isEqualTo(0);
    assertThat(modificationItems[0].getModificationOp()).isEqualTo(DirContext.REMOVE_ATTRIBUTE);
}
 
源代码21 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testSetDnAttributeValueIdentical() {
    BasicAttributes attributes = new BasicAttributes();
    attributes.put("uniqueMember", "cn=john doe, ou=company");

    DirContextAdapter tested = new DirContextAdapter(attributes, LdapUtils.newLdapName("cn=administrators, ou=groups"));
    tested.setUpdateMode(true);

    tested.setAttributeValue("uniqueMember", LdapUtils.newLdapName("cn=john doe, ou=company"));
    ModificationItem[] modificationItems = tested.getModificationItems();
    assertThat(modificationItems.length).isEqualTo(0);
}
 
源代码22 项目: fess   文件: LdapManager.java
protected void modifyGroupAttributes(final Group group, final Supplier<Hashtable<String, String>> adminEnv, final String entryDN,
        final List<SearchResult> result) {
    final List<ModificationItem> modifyList = new ArrayList<>();

    final String attrGidNumber = fessConfig.getLdapAttrGidNumber();
    OptionalUtil
            .ofNullable(group.getGidNumber())
            .filter(s -> StringUtil.isNotBlank(s.toString()))
            .ifPresent(s -> modifyReplaceEntry(modifyList, attrGidNumber, s.toString()))
            .orElse(() -> getAttributeValueList(result, attrGidNumber).stream().forEach(
                    v -> modifyDeleteEntry(modifyList, attrGidNumber, v)));

    modify(entryDN, modifyList, adminEnv);
}
 
源代码23 项目: spring-ldap   文件: DirContextAdapterTest.java
/**
 * Test case corresponding to LDAP-96 in Spring Jira.
 * https://jira.springframework.org/browse/LDAP-96
 */
   @Test
public void testChangeMultiAttributeOrderDoesMatterLDAP96()
		throws Exception {
	final Attributes fixtureAttrs = new BasicAttributes();
	Attribute multi = new BasicAttribute("title");
	multi.add("Juergen");
	multi.add("George");
	fixtureAttrs.put(multi);
	class TestableDirContextAdapter extends DirContextAdapter {
		public TestableDirContextAdapter() {
			super(fixtureAttrs, null);
			setUpdateMode(true);
		}
	}
	tested = new TestableDirContextAdapter();
	assertThat(tested.isUpdateMode()).isTrue();
	tested.setAttributeValues("title", new String[] { "Jim", "George",
			"Juergen" }, true);

	// change
	ModificationItem[] mods = tested.getModificationItems();
	assertThat(mods.length).isEqualTo(1);
	assertThat(mods[0].getModificationOp()).isEqualTo(DirContext.REPLACE_ATTRIBUTE);
	Attribute attr = mods[0].getAttribute();
	assertThat(attr.get(0)).isEqualTo("Jim");
	assertThat(attr.get(1)).isEqualTo("George");
	assertThat(attr.get(2)).isEqualTo("Juergen");
}
 
源代码24 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testModifyNull() throws Exception {
	tested.setAttributeValue("memberDN", null);
	tested.setUpdateMode(true);
	assertThat(tested.isUpdateMode()).isTrue();
	tested.setAttributeValue("memberDN", new LdapName("ou=test"));

	ModificationItem[] mods = tested.getModificationItems();
	assertThat(mods.length).isEqualTo(1);
}
 
源代码25 项目: keycloak   文件: LDAPIdentityStore.java
@Override
public void updatePassword(LDAPObject user, String password, LDAPOperationDecorator passwordUpdateDecorator) {
    String userDN = user.getDn().toString();

    if (logger.isDebugEnabled()) {
        logger.debugf("Using DN [%s] for updating LDAP password of user", userDN);
    }

    if (getConfig().isActiveDirectory()) {
        updateADPassword(userDN, password, passwordUpdateDecorator);
        return;
    }

    try {
        if (config.useExtendedPasswordModifyOp()) {
            operationManager.passwordModifyExtended(userDN, password, passwordUpdateDecorator);
        } else {
            ModificationItem[] mods = new ModificationItem[1];
            BasicAttribute mod0 = new BasicAttribute(LDAPConstants.USER_PASSWORD_ATTRIBUTE, password);
            mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, mod0);
            operationManager.modifyAttributes(userDN, mods, passwordUpdateDecorator);
        }
    } catch (ModelException me) {
        throw me;
    } catch (Exception e) {
        throw new ModelException("Error updating password.", e);
    }
}
 
源代码26 项目: secure-data-service   文件: LdapServiceImpl.java
private boolean toggleUserInGroup(String realm, Group group, User user, int op) {
    BasicAttribute member = new BasicAttribute("memberUid", user.getUid());
    ModificationItem[] modGroups = new ModificationItem[] {
          new ModificationItem(op, member) };

    Name groupName = buildGroupDN(realm, group.getGroupName());

    try {
        ldapTemplate.modifyAttributes(groupName, modGroups);
    } catch (NamingException e) {
        return false;
    }

    return true;
}
 
源代码27 项目: spring-ldap   文件: DirContextAdapterTest.java
@Test
public void testGetModificationItems() throws Exception {
	ModificationItem[] items = tested.getModificationItems();
	assertThat(items.length).isEqualTo(0);
	tested.setUpdateMode(true);
	assertThat(items.length).isEqualTo(0);
}
 
源代码28 项目: spring-ldap   文件: LdapTemplateModifyITest.java
@Test
public void testModifyAttributes_Plain() {
	ModificationItem item = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute("description",
			"Some other description"));

	tested.modifyAttributes(PERSON4_DN, new ModificationItem[] { item });

	verifyBoundCorrectData();
}
 
源代码29 项目: MyVirtualDirectory   文件: ServerEntryUtils.java
/**
 * Convert a ModificationItem to an instance of a ServerModification object
 *
 * @param modificationImpl the modification instance to convert
 * @param attributeType the associated attributeType
 * @return a instance of a ServerModification object
 */
private static Modification toServerModification( ModificationItem modificationImpl, AttributeType attributeType )
    throws LdapException
{
    ModificationOperation operation;

    switch ( modificationImpl.getModificationOp() )
    {
        case DirContext.REMOVE_ATTRIBUTE:
            operation = ModificationOperation.REMOVE_ATTRIBUTE;
            break;

        case DirContext.REPLACE_ATTRIBUTE:
            operation = ModificationOperation.REPLACE_ATTRIBUTE;
            break;

        case DirContext.ADD_ATTRIBUTE:
        default:
            operation = ModificationOperation.ADD_ATTRIBUTE;
            break;

    }

    Modification modification = new DefaultModification(
        operation,
        ServerEntryUtils.toServerAttribute( modificationImpl.getAttribute(), attributeType ) );

    return modification;

}
 
@Test
public void testRollback() {
	ModificationItem[] expectedCompensatingItems = new ModificationItem[0];
	ModificationItem[] expectedActualItems = new ModificationItem[0];

	Name expectedDn = LdapUtils.newLdapName("cn=john doe");

	ModifyAttributesOperationExecutor tested = new ModifyAttributesOperationExecutor(ldapOperationsMock,
			expectedDn, expectedActualItems, expectedCompensatingItems);

	// Perform test
	tested.rollback();

	verify(ldapOperationsMock).modifyAttributes(expectedDn, expectedCompensatingItems);
}
 
 类所在包
 同包方法