Skip to content

Commit

Permalink
DefaultColumnUtils moved from model-api to model-common + cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
virgo47 committed May 29, 2020
1 parent 7364c3d commit 832f78a
Show file tree
Hide file tree
Showing 8 changed files with 63 additions and 102 deletions.
Expand Up @@ -16,7 +16,7 @@
import com.evolveum.midpoint.model.api.AssignmentObjectRelation;
import com.evolveum.midpoint.model.api.ModelAuthorizationAction;
import com.evolveum.midpoint.model.api.authentication.CompiledObjectCollectionView;
import com.evolveum.midpoint.model.api.util.DefaultColumnUtils;
import com.evolveum.midpoint.model.common.util.DefaultColumnUtils;
import com.evolveum.midpoint.prism.PrismContext;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.PrismObjectDefinition;
Expand Down
12 changes: 0 additions & 12 deletions model/model-api/pom.xml
Expand Up @@ -25,10 +25,6 @@
</properties>

<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>com.evolveum.midpoint.infra</groupId>
<artifactId>util</artifactId>
Expand Down Expand Up @@ -106,13 +102,5 @@
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
</dependency>
</dependencies>
</project>
11 changes: 11 additions & 0 deletions model/model-common/pom.xml
Expand Up @@ -145,6 +145,17 @@
<artifactId>javax.annotation-api</artifactId>
</dependency>

<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<!-- TODO: go away, Joda -->
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
</dependency>


<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
Expand Down
Expand Up @@ -4,7 +4,7 @@
* This work is dual-licensed under the Apache License 2.0
* and European Union Public License. See LICENSE file for details.
*/
package com.evolveum.midpoint.model.api.util;
package com.evolveum.midpoint.model.common.util;

import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
Expand Down Expand Up @@ -49,25 +49,25 @@ public class DefaultColumnUtils {
private static final Map<Class<?>, Map<ItemPath, String>> SPECIFIC_LOCALIZATION;

static {
SPECIFIC_LOCALIZATION = new ImmutableMap.Builder<Class<?>, Map<ItemPath, String>>()
.put(UserType.class, new ImmutableMap.Builder<ItemPath, String>()
SPECIFIC_LOCALIZATION = ImmutableMap.<Class<?>, Map<ItemPath, String>>builder()
.put(UserType.class, ImmutableMap.<ItemPath, String>builder()
.put(UserType.F_LINK_REF, "FocusType.accounts")
.build())
.put(TaskType.class, new ImmutableMap.Builder<ItemPath, String>()
.put(TaskType.class, ImmutableMap.<ItemPath, String>builder()
.put(TaskType.F_COMPLETION_TIMESTAMP, "TaskType.currentRunTime")
.put(TaskType.F_NODE_AS_OBSERVED, "pageTasks.task.executingAt")
.put(TaskType.F_SCHEDULE, "pageTasks.task.scheduledToRunAgain")
.put(ItemPath.create(TaskType.F_OPERATION_STATS, OperationStatsType.F_ITERATIVE_TASK_INFORMATION,
IterativeTaskInformationType.F_TOTAL_FAILURE_COUNT),
"pageTasks.task.errors")
.build())
.put(ResourceType.class, new ImmutableMap.Builder<ItemPath, String>()
.put(ResourceType.class, ImmutableMap.<ItemPath, String>builder()
.put(ItemPath.create(ResourceType.F_CONNECTOR_REF, ConnectorType.F_CONNECTOR_TYPE),
"ConnectorType.connectorType")
.put(ItemPath.create(ResourceType.F_CONNECTOR_REF, ConnectorType.F_CONNECTOR_VERSION),
"ConnectorType.connectorVersion")
.build())
.put(AuditEventRecordType.class, new ImmutableMap.Builder<ItemPath, String>()
.put(AuditEventRecordType.class, ImmutableMap.<ItemPath, String>builder()
.put(new ItemName(AuditConstants.TIME_COLUMN), AuditConstants.TIME_COLUMN_KEY)
.put(new ItemName(AuditConstants.INITIATOR_COLUMN), AuditConstants.INITIATOR_COLUMN_KEY)
.put(new ItemName(AuditConstants.EVENT_STAGE_COLUMN), AuditConstants.EVENT_STAGE_COLUMN_KEY)
Expand Down Expand Up @@ -102,7 +102,7 @@ public class DefaultColumnUtils {
new ItemName(AuditConstants.DELTA_COLUMN)
);

COLUMNS_DEF = new ImmutableMap.Builder<Class<? extends ObjectType>, List<ItemPath>>()
COLUMNS_DEF = ImmutableMap.<Class<? extends ObjectType>, List<ItemPath>>builder()
.put(ResourceType.class, Arrays.asList(
ResourceType.F_NAME,
ItemPath.create(ResourceType.F_CONNECTOR_REF, ConnectorType.F_CONNECTOR_TYPE),
Expand Down
Expand Up @@ -6,80 +6,43 @@
*/
package com.evolveum.midpoint.report.impl;

import java.io.File;
import java.io.InputStream;
import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.annotation.PostConstruct;
import javax.xml.datatype.XMLGregorianCalendar;
import javax.xml.namespace.QName;

import com.evolveum.midpoint.model.api.ModelInteractionService;
import com.evolveum.midpoint.prism.delta.DeltaFactory;
import com.evolveum.midpoint.prism.delta.ObjectDelta;
import com.evolveum.midpoint.repo.common.commandline.CommandLineScriptExecutor;
import com.evolveum.midpoint.report.api.ReportConstants;
import com.evolveum.midpoint.report.impl.controller.engine.CollectionEngineController;
import com.evolveum.midpoint.report.impl.controller.engine.DashboardEngineController;
import com.evolveum.midpoint.report.impl.controller.engine.EngineController;
import com.evolveum.midpoint.report.impl.controller.export.CsvExporterController;
import com.evolveum.midpoint.report.impl.controller.export.ExportController;
import com.evolveum.midpoint.report.impl.controller.export.HtmlExportController;
import com.evolveum.midpoint.schema.SchemaHelper;
import com.evolveum.midpoint.schema.SearchResultList;
import com.evolveum.midpoint.schema.util.ObjectTypeUtil;
import com.evolveum.midpoint.task.api.*;

import com.evolveum.midpoint.util.logging.LoggingUtils;

import com.evolveum.prism.xml.ns._public.types_3.PolyStringType;

import j2html.TagCreator;
import j2html.tags.ContainerTag;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.Validate;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;

import com.evolveum.midpoint.audit.api.AuditEventRecord;
import com.evolveum.midpoint.audit.api.AuditService;
import com.evolveum.midpoint.common.Clock;
import com.evolveum.midpoint.common.LocalizationService;
import com.evolveum.midpoint.model.api.ModelService;
import com.evolveum.midpoint.model.api.interaction.DashboardService;
import com.evolveum.midpoint.model.api.interaction.DashboardWidget;
import com.evolveum.midpoint.model.api.util.DashboardUtils;
import com.evolveum.midpoint.model.api.util.DefaultColumnUtils;
import com.evolveum.midpoint.prism.*;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.repo.common.ObjectResolver;
import com.evolveum.midpoint.repo.common.expression.ExpressionFactory;
import com.evolveum.midpoint.repo.common.expression.ExpressionUtil;
import com.evolveum.midpoint.repo.common.expression.ExpressionVariables;
import com.evolveum.midpoint.report.api.ReportService;
import com.evolveum.midpoint.schema.ObjectDeltaOperation;
import com.evolveum.midpoint.schema.constants.AuditConstants;
import com.evolveum.midpoint.schema.constants.ExpressionConstants;
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.schema.util.MiscSchemaUtil;
import com.evolveum.midpoint.task.api.TaskRunResult.TaskRunResultStatus;
import com.evolveum.midpoint.util.QNameUtil;
import com.evolveum.midpoint.util.exception.*;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import com.evolveum.prism.xml.ns._public.types_3.ItemPathType;

/**
* @author skublik
*/

@Component
public class ReportTaskHandler implements TaskHandler {

Expand Down
Expand Up @@ -10,7 +10,7 @@
import com.evolveum.midpoint.model.api.authentication.CompiledObjectCollectionView;
import com.evolveum.midpoint.model.api.interaction.DashboardWidget;
import com.evolveum.midpoint.model.api.util.DashboardUtils;
import com.evolveum.midpoint.model.api.util.DefaultColumnUtils;
import com.evolveum.midpoint.model.common.util.DefaultColumnUtils;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.PrismObjectDefinition;
import com.evolveum.midpoint.prism.path.ItemPath;
Expand Down Expand Up @@ -139,7 +139,7 @@ public byte[] processCollection(String nameOfReport, ObjectCollectionReportEngin
}

byte[] csvFile;
boolean isAuditCollection = collection != null && collection.getAuditSearch() != null ? true : false;
boolean isAuditCollection = collection != null && collection.getAuditSearch() != null;
if (!isAuditCollection) {
csvFile = createTableBoxForObjectView(collectionRefSpecification, compiledCollection, task, result);
} else {
Expand Down
Expand Up @@ -15,7 +15,7 @@

import com.evolveum.midpoint.audit.api.AuditEventRecord;
import com.evolveum.midpoint.model.api.authentication.CompiledObjectCollectionView;
import com.evolveum.midpoint.model.api.util.DefaultColumnUtils;
import com.evolveum.midpoint.model.common.util.DefaultColumnUtils;
import com.evolveum.midpoint.prism.*;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.prism.path.NameItemPathSegment;
Expand Down Expand Up @@ -368,8 +368,8 @@ private String getStringValueByAuditColumn(AuditEventRecord record, ItemPath pat
}
return sb.toString();
default:
if(record.getCustomColumnProperty().containsKey(path)) {
return record.getCustomColumnProperty().get(path);
if (record.getCustomColumnProperty().containsKey(path.toString())) {
return record.getCustomColumnProperty().get(path.toString());
} else {
LOGGER.error("Unknown name of column for AuditReport " + path);
throw new IllegalArgumentException("Unknown name of column for AuditReport " + path);
Expand Down

0 comments on commit 832f78a

Please sign in to comment.