Skip to content

Commit

Permalink
Merge remote-tracking branch 'refs/remotes/origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
skublik committed Dec 20, 2018
2 parents a5cadb9 + 0519770 commit c1f4607
Show file tree
Hide file tree
Showing 16 changed files with 116 additions and 164 deletions.
2 changes: 1 addition & 1 deletion build-system/pom.xml
Expand Up @@ -682,7 +682,7 @@
<dependency>
<groupId>com.evolveum.polygon</groupId>
<artifactId>connector-csv</artifactId>
<version>2.2</version>
<version>2.3</version>
</dependency>
<dependency>
<groupId>com.evolveum.polygon</groupId>
Expand Down
Expand Up @@ -70,7 +70,6 @@
import com.evolveum.midpoint.util.CheckedProducer;
import com.evolveum.midpoint.util.Holder;
import com.evolveum.midpoint.util.Producer;
import com.evolveum.midpoint.util.QNameUtil;
import com.evolveum.midpoint.util.exception.*;
import com.evolveum.midpoint.util.logging.LoggingUtils;
import com.evolveum.midpoint.util.logging.Trace;
Expand All @@ -91,6 +90,7 @@
import com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour;
import com.evolveum.midpoint.web.page.admin.PageAdmin;
import com.evolveum.midpoint.web.page.admin.PageAdminFocus;
import com.evolveum.midpoint.web.page.admin.PageAdminObjectList;
import com.evolveum.midpoint.web.page.admin.cases.PageCase;
import com.evolveum.midpoint.web.page.admin.cases.PageCaseWorkItem;
import com.evolveum.midpoint.web.page.admin.cases.PageCaseWorkItemsAll;
Expand Down Expand Up @@ -186,7 +186,7 @@ public abstract class PageBase extends WebPage implements ModelServiceLocator {

private static final String DOT_CLASS = PageBase.class.getName() + ".";
private static final String OPERATION_LOAD_USER = DOT_CLASS + "loadUser";
private static final String OPERATION_LOAD_USERS_VIEW_COLLECTION_REF = DOT_CLASS + "loadUsersViewCollectionRef";
protected static final String OPERATION_LOAD_VIEW_COLLECTION_REF = DOT_CLASS + "loadViewCollectionRef";
private static final String OPERATION_LOAD_WORK_ITEM_COUNT = DOT_CLASS + "loadWorkItemCount";
private static final String OPERATION_LOAD_CERT_WORK_ITEM_COUNT = DOT_CLASS + "loadCertificationWorkItemCount";

Expand Down Expand Up @@ -225,6 +225,8 @@ public abstract class PageBase extends WebPage implements ModelServiceLocator {
private static final String ID_BODY = "body";

private static final int DEFAULT_BREADCRUMB_STEP = 2;
public static final String PARAMETER_OBJECT_COLLECTION_TYPE_OID = "collectionOid";
public static final String PARAMETER_OBJECT_ARCHETYPE_REF = "archetypeOid";

private static final String CLASS_DEFAULT_SKIN = "skin-blue-light";

Expand Down Expand Up @@ -1790,7 +1792,8 @@ private MainMenuItem createServerTasksItems() {
PageTaskEdit.class, null, createVisibleDisabledBehaviorForEditMenu(PageTaskEdit.class));
item.getItems().add(menuItem);

addCollectionsMenuItems(item.getItems(), TaskType.COMPLEX_TYPE);
//should we support archetype view for TaskType?
// addCollectionsMenuItems(item.getItems(), TaskType.COMPLEX_TYPE);

return item;
}
Expand All @@ -1808,7 +1811,7 @@ private MainMenuItem createResourcesItems() {
addMenuItem(item, "PageAdmin.menu.top.resources.import", PageImportResource.class);
addMenuItem(item, "PageAdmin.menu.top.connectorHosts.list", PageConnectorHosts.class);

addCollectionsMenuItems(item.getItems(), ResourceType.COMPLEX_TYPE);
addCollectionsMenuItems(item.getItems(), ResourceType.COMPLEX_TYPE, PageResources.class);

return item;
}
Expand Down Expand Up @@ -1934,7 +1937,7 @@ private MainMenuItem createUsersItems() {
createFocusPageNewEditMenu(item.getItems(), "PageAdmin.menu.top.users.new",
"PageAdmin.menu.top.users.edit", PageUser.class, true);

addCollectionsMenuItems(item.getItems(), UserType.COMPLEX_TYPE);
addCollectionsMenuItems(item.getItems(), UserType.COMPLEX_TYPE, PageUsers.class);

return item;
}
Expand Down Expand Up @@ -2052,7 +2055,8 @@ private MainMenuItem createOrganizationsMenu() {
createFocusPageNewEditMenu(item.getItems(), "PageAdmin.menu.top.users.org.new", "PageAdmin.menu.top.users.org.edit",
PageOrgUnit.class, true);

addCollectionsMenuItems(item.getItems(), OrgType.COMPLEX_TYPE);
//todo should we have org list page for collection/archetype view?
// addCollectionsMenuItems(item.getItems(), OrgType.COMPLEX_TYPE);

return item;
}
Expand All @@ -2066,7 +2070,7 @@ private MainMenuItem createRolesItems() {
createFocusPageNewEditMenu(item.getItems(), "PageAdmin.menu.top.roles.new", "PageAdmin.menu.top.roles.edit",
PageRole.class, true);

addCollectionsMenuItems(item.getItems(), RoleType.COMPLEX_TYPE);
addCollectionsMenuItems(item.getItems(), RoleType.COMPLEX_TYPE, PageRoles.class);

return item;
}
Expand All @@ -2080,12 +2084,12 @@ private MainMenuItem createServicesItems() {
createFocusPageNewEditMenu(item.getItems(), "PageAdmin.menu.top.services.new", "PageAdmin.menu.top.services.edit",
PageService.class, true);

addCollectionsMenuItems(item.getItems(), ServiceType.COMPLEX_TYPE);
addCollectionsMenuItems(item.getItems(), ServiceType.COMPLEX_TYPE, PageServices.class);

return item;
}

private void addCollectionsMenuItems(List<MenuItem> menu, QName type) {
private void addCollectionsMenuItems(List<MenuItem> menu, QName type, Class<? extends PageAdminObjectList> redirectToPage) {
List<CompiledObjectCollectionView> objectViews = getCompiledUserProfile().findAllApplicableObjectCollectionViews(type);
if (objectViews == null) {
return;
Expand All @@ -2104,25 +2108,25 @@ private void addCollectionsMenuItems(List<MenuItem> menu, QName type) {
return;
}

OperationResult result = new OperationResult(OPERATION_LOAD_USERS_VIEW_COLLECTION_REF);
Task task = createSimpleTask(OPERATION_LOAD_USERS_VIEW_COLLECTION_REF);
OperationResult result = new OperationResult(OPERATION_LOAD_VIEW_COLLECTION_REF);
Task task = createSimpleTask(OPERATION_LOAD_VIEW_COLLECTION_REF);
PrismObject<? extends ObjectType> collectionObject = WebModelServiceUtils.resolveReferenceNoFetch(collectionRef, this,
task, result);
if (collectionObject == null) {
return;
}
ObjectType objectType = collectionObject.asObjectable();
if (!(objectType instanceof ObjectCollectionType) && !(objectType instanceof ArchetypeType)) {
if (!(objectType instanceof ArchetypeType)) {
return;
}
DisplayType viewDisplayType = objectView.getDisplay();

PageParameters pageParameters = new PageParameters();
pageParameters.add(PageUsersView.PARAMETER_OBJECT_COLLECTION_TYPE_OID, objectType.getOid());
pageParameters.add(PageUsersView.PARAMETER_OBJECT_ARCHETYPE_REF, objectType.getOid());

MenuItem userViewMenu = new MenuItem(viewDisplayType != null && PolyStringUtils.isNotEmpty(viewDisplayType.getLabel())
? createStringResource(viewDisplayType.getLabel())
: createStringResource("MenuItem.noName"), PageUsersView.class, pageParameters, null);
: createStringResource("MenuItem.noName"), redirectToPage, pageParameters, null);
menu.add(userViewMenu);

});
Expand Down
Expand Up @@ -17,19 +17,24 @@

import com.evolveum.midpoint.gui.api.GuiStyleConstants;
import com.evolveum.midpoint.gui.api.component.MainObjectListPanel;
import com.evolveum.midpoint.gui.api.util.WebModelServiceUtils;
import com.evolveum.midpoint.model.api.authentication.CompiledObjectCollectionView;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.query.ObjectFilter;
import com.evolveum.midpoint.prism.query.ObjectOrdering;
import com.evolveum.midpoint.prism.query.ObjectQuery;
import com.evolveum.midpoint.schema.GetOperationOptions;
import com.evolveum.midpoint.schema.SelectorOptions;
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.web.component.menu.cog.InlineMenuItem;
import com.evolveum.midpoint.web.component.util.SelectableBean;
import com.evolveum.midpoint.web.page.admin.roles.PageRoles;
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ReportOutputType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.RoleType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import org.apache.commons.lang.StringUtils;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.repeater.data.table.ColGroup;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
Expand All @@ -38,9 +43,7 @@
import org.apache.wicket.model.IModel;
import org.apache.wicket.request.mapper.parameter.PageParameters;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.*;

/**
* Created by honchar
Expand Down Expand Up @@ -78,6 +81,7 @@ protected void initLayout() {
}

private void initTable(Form mainForm) {
//TODO fix tableId
MainObjectListPanel<O> userListPanel = new MainObjectListPanel<O>(ID_TABLE,
getType(), UserProfileStorage.TableId.TABLE_USERS, getQueryOptions(), this) {
private static final long serialVersionUID = 1L;
Expand Down Expand Up @@ -108,7 +112,7 @@ protected ObjectQuery createContentQuery() {
ObjectFilter usersViewFilter = getArchetypeViewFilter();
if (usersViewFilter != null){
if (contentQuery == null) {
contentQuery = getPrismContext().queryFactory().createQuery();
contentQuery = PageAdminObjectList.this.getPrismContext().queryFactory().createQuery();
}
contentQuery.addFilter(usersViewFilter);
}
Expand Down Expand Up @@ -147,7 +151,24 @@ protected void objectDetailsPerformed(AjaxRequestTarget target, O object){}
protected void newObjectActionPerformed(AjaxRequestTarget target){}

protected ObjectFilter getArchetypeViewFilter(){
return null;
PageParameters parameters = getPageParameters();
if (parameters == null || parameters.get(PARAMETER_OBJECT_ARCHETYPE_REF) == null || parameters.get(PARAMETER_OBJECT_ARCHETYPE_REF).isEmpty()) {
return null;
}

String oid = parameters.get(PARAMETER_OBJECT_ARCHETYPE_REF).toString();
List<CompiledObjectCollectionView> objectViews = getCompiledUserProfile().findAllApplicableObjectCollectionViews(getType());
if (objectViews == null) {
return null;
}
CompiledObjectCollectionView referredObjectView = null;
for (CompiledObjectCollectionView view : objectViews){
if (view.getCollection() != null && view.getCollection().getCollectionRef() != null && oid.equals(view.getCollection().getCollectionRef().getOid())){
referredObjectView = view;
break;
}
}
return referredObjectView.getFilter();
}

protected ObjectQuery addCustomFilterToContentQuery(ObjectQuery query){
Expand Down

This file was deleted.

Expand Up @@ -26,6 +26,7 @@
import com.evolveum.midpoint.web.component.AceEditor;
import com.evolveum.midpoint.web.component.AjaxSubmitButton;
import com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour;
import com.evolveum.midpoint.web.page.admin.PageAdmin;
import com.evolveum.midpoint.web.page.admin.configuration.PageAdminConfiguration;
import com.evolveum.midpoint.web.page.admin.reports.dto.ReportDto;
import com.evolveum.midpoint.web.security.MidPointApplication;
Expand Down Expand Up @@ -63,7 +64,7 @@
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_REPORTS_REPORT_CREATE_URL,
label = "PageNewReport.auth.reports.label",
description = "PageNewReport.auth.reports.description")})
public class PageNewReport extends PageAdminReports {
public class PageNewReport extends PageAdmin {

private static final Trace LOGGER = TraceManager.getTrace(PageNewReport.class);

Expand Down
Expand Up @@ -19,6 +19,7 @@
import java.util.List;

import com.evolveum.midpoint.prism.delta.DeltaFactory;
import com.evolveum.midpoint.web.page.admin.PageAdmin;
import org.apache.wicket.RestartResponseException;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.tabs.AbstractTab;
Expand Down Expand Up @@ -62,7 +63,7 @@
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_REPORT_URL,
label = "PageReport.auth.report.label",
description = "PageReport.auth.report.description")})
public class PageReport extends PageAdminReports {
public class PageReport extends PageAdmin {

private static Trace LOGGER = TraceManager.getTrace(PageReport.class);

Expand Down
Expand Up @@ -34,6 +34,7 @@
import com.evolveum.midpoint.web.component.menu.cog.InlineMenuItem;
import com.evolveum.midpoint.web.component.menu.cog.InlineMenuItemAction;
import com.evolveum.midpoint.web.component.util.SelectableBean;
import com.evolveum.midpoint.web.page.admin.PageAdmin;
import com.evolveum.midpoint.web.page.admin.configuration.PageAdminConfiguration;
import com.evolveum.midpoint.web.page.admin.reports.component.RunReportPopupPanel;
import com.evolveum.midpoint.web.session.UserProfileStorage;
Expand Down Expand Up @@ -65,7 +66,7 @@
@AuthorizationAction(actionUri = AuthorizationConstants.AUTZ_UI_REPORTS_URL,
label = "PageReports.auth.reports.label",
description = "PageReports.auth.reports.description")})
public class PageReports extends PageAdminReports {
public class PageReports extends PageAdmin {

private static final Trace LOGGER = TraceManager.getTrace(PageReports.class);

Expand Down
Expand Up @@ -52,7 +52,6 @@
public class PageUsersView extends PageUsers {
private static final long serialVersionUID = 1L;

public static final String PARAMETER_OBJECT_COLLECTION_TYPE_OID = "collectionOid";

private static final Trace LOGGER = TraceManager.getTrace(PageUsersView.class);

Expand Down

This file was deleted.

This file was deleted.

0 comments on commit c1f4607

Please sign in to comment.