Search in sources :

Example 1 with MemberImpl

use of org.eclipse.che.multiuser.organization.spi.impl.MemberImpl in project che-server by eclipse-che.

the class OrganizationManagerTest method shouldRemoveMembersByOrganizationId.

@Test
public void shouldRemoveMembersByOrganizationId() throws Exception {
    MemberImpl member1 = new MemberImpl("user1", "org1", singletonList("read"));
    MemberImpl member2 = new MemberImpl("user2", "org1", singletonList("read"));
    doReturn(new Page<>(singletonList(member1), 0, 1, 2)).doReturn(new Page<>(singletonList(member2), 1, 1, 2)).when(memberDao).getMembers(anyString(), anyInt(), anyLong());
    manager.removeMembers("org1");
    verify(memberDao, times(2)).getMembers("org1", 100, 0);
    verify(memberDao).remove("user1", "org1");
    verify(memberDao).remove("user2", "org1");
}
Also used : MemberImpl(org.eclipse.che.multiuser.organization.spi.impl.MemberImpl) Page(org.eclipse.che.api.core.Page) Test(org.testng.annotations.Test)

Example 2 with MemberImpl

use of org.eclipse.che.multiuser.organization.spi.impl.MemberImpl in project che-server by eclipse-che.

the class OrganizationManagerTest method shouldCreateSuborganization.

@Test
public void shouldCreateSuborganization() throws Exception {
    final OrganizationImpl parentOrganization = new OrganizationImpl("org123", "parentOrg", null);
    when(organizationDao.getById(anyString())).thenReturn(parentOrganization);
    final Organization toCreate = new OrganizationImpl(null, "orgName", parentOrganization.getId());
    manager.create(toCreate);
    verify(organizationDao).create(organizationCaptor.capture());
    final OrganizationImpl createdOrganization = organizationCaptor.getValue();
    assertEquals(createdOrganization.getName(), toCreate.getName());
    assertEquals(createdOrganization.getQualifiedName(), parentOrganization.getQualifiedName() + "/" + toCreate.getName());
    assertEquals(createdOrganization.getParent(), toCreate.getParent());
    verify(eventService).publish(persistEventCaptor.capture());
    assertEquals(persistEventCaptor.getValue().getOrganization(), createdOrganization);
    verify(memberDao).store(new MemberImpl(USER_ID, createdOrganization.getId(), OrganizationDomain.getActions()));
}
Also used : Organization(org.eclipse.che.multiuser.organization.shared.model.Organization) MemberImpl(org.eclipse.che.multiuser.organization.spi.impl.MemberImpl) OrganizationImpl(org.eclipse.che.multiuser.organization.spi.impl.OrganizationImpl) Test(org.testng.annotations.Test)

Example 3 with MemberImpl

use of org.eclipse.che.multiuser.organization.spi.impl.MemberImpl in project che-server by eclipse-che.

the class OrganizationManagerTest method shouldCreateOrganization.

@Test
public void shouldCreateOrganization() throws Exception {
    final Organization toCreate = DtoFactory.newDto(OrganizationDto.class).withName("newOrg");
    manager.create(toCreate);
    verify(organizationDao).create(organizationCaptor.capture());
    final OrganizationImpl createdOrganization = organizationCaptor.getValue();
    assertEquals(createdOrganization.getName(), toCreate.getName());
    assertEquals(createdOrganization.getQualifiedName(), toCreate.getName());
    assertEquals(createdOrganization.getParent(), toCreate.getParent());
    verify(eventService).publish(persistEventCaptor.capture());
    assertEquals(persistEventCaptor.getValue().getOrganization(), createdOrganization);
    verify(memberDao).store(new MemberImpl(USER_ID, createdOrganization.getId(), OrganizationDomain.getActions()));
}
Also used : Organization(org.eclipse.che.multiuser.organization.shared.model.Organization) MemberImpl(org.eclipse.che.multiuser.organization.spi.impl.MemberImpl) OrganizationDto(org.eclipse.che.multiuser.organization.shared.dto.OrganizationDto) OrganizationImpl(org.eclipse.che.multiuser.organization.spi.impl.OrganizationImpl) Test(org.testng.annotations.Test)

Example 4 with MemberImpl

use of org.eclipse.che.multiuser.organization.spi.impl.MemberImpl in project che-server by eclipse-che.

the class JpaMemberDao method getMember.

@Override
public MemberImpl getMember(String organizationId, String userId) throws NotFoundException, ServerException {
    requireNonNull(organizationId, "Required non-null organization id");
    requireNonNull(userId, "Required non-null user id");
    try {
        return new MemberImpl(getEntity(wildcardToNull(userId), organizationId));
    } catch (RuntimeException e) {
        throw new ServerException(e.getLocalizedMessage(), e);
    }
}
Also used : ServerException(org.eclipse.che.api.core.ServerException) MemberImpl(org.eclipse.che.multiuser.organization.spi.impl.MemberImpl)

Example 5 with MemberImpl

use of org.eclipse.che.multiuser.organization.spi.impl.MemberImpl in project che-server by eclipse-che.

the class JpaMemberDao method getMembers.

@Override
@Transactional
public Page<MemberImpl> getMembers(String organizationId, int maxItems, long skipCount) throws ServerException {
    requireNonNull(organizationId, "Required non-null organization id");
    checkArgument(skipCount <= Integer.MAX_VALUE, "The number of items to skip can't be greater than " + Integer.MAX_VALUE);
    try {
        final EntityManager manager = managerProvider.get();
        final List<MemberImpl> members = manager.createNamedQuery("Member.getByOrganization", MemberImpl.class).setParameter("organizationId", organizationId).setMaxResults(maxItems).setFirstResult((int) skipCount).getResultList().stream().map(MemberImpl::new).collect(toList());
        final Long membersCount = manager.createNamedQuery("Member.getCountByOrganizationId", Long.class).setParameter("organizationId", organizationId).getSingleResult();
        return new Page<>(members, skipCount, maxItems, membersCount);
    } catch (RuntimeException e) {
        throw new ServerException(e.getLocalizedMessage(), e);
    }
}
Also used : EntityManager(javax.persistence.EntityManager) ServerException(org.eclipse.che.api.core.ServerException) MemberImpl(org.eclipse.che.multiuser.organization.spi.impl.MemberImpl) Page(org.eclipse.che.api.core.Page) Transactional(com.google.inject.persist.Transactional)

Aggregations

MemberImpl (org.eclipse.che.multiuser.organization.spi.impl.MemberImpl)36 Test (org.testng.annotations.Test)18 OrganizationImpl (org.eclipse.che.multiuser.organization.spi.impl.OrganizationImpl)14 UserImpl (org.eclipse.che.api.user.server.model.impl.UserImpl)8 TypeLiteral (com.google.inject.TypeLiteral)6 JpaPersistModule (com.google.inject.persist.jpa.JpaPersistModule)6 TckResourcesCleaner (org.eclipse.che.commons.test.tck.TckResourcesCleaner)6 DBInitializer (org.eclipse.che.core.db.DBInitializer)6 SchemaInitializer (org.eclipse.che.core.db.schema.SchemaInitializer)6 FlywaySchemaInitializer (org.eclipse.che.core.db.schema.impl.flyway.FlywaySchemaInitializer)6 MemberDao (org.eclipse.che.multiuser.organization.spi.MemberDao)6 OrganizationDao (org.eclipse.che.multiuser.organization.spi.OrganizationDao)6 OrganizationDistributedResourcesDao (org.eclipse.che.multiuser.organization.spi.OrganizationDistributedResourcesDao)6 OrganizationDistributedResourcesImpl (org.eclipse.che.multiuser.organization.spi.impl.OrganizationDistributedResourcesImpl)6 JpaMemberDao (org.eclipse.che.multiuser.organization.spi.jpa.JpaMemberDao)6 JpaOrganizationDao (org.eclipse.che.multiuser.organization.spi.jpa.JpaOrganizationDao)6 JpaOrganizationDistributedResourcesDao (org.eclipse.che.multiuser.organization.spi.jpa.JpaOrganizationDistributedResourcesDao)6 UserDevfilePermissionImpl (org.eclipse.che.multiuser.permission.devfile.server.model.impl.UserDevfilePermissionImpl)6 Transactional (com.google.inject.persist.Transactional)4 HashMap (java.util.HashMap)4