Skip to content

Commit

Permalink
Interim commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
mederly committed Jun 2, 2016
1 parent 4ae27f6 commit 1035e00
Show file tree
Hide file tree
Showing 11 changed files with 1,050 additions and 15 deletions.
Expand Up @@ -17,20 +17,15 @@

import java.util.Collection;

import com.evolveum.midpoint.model.api.context.ModelContext;
import com.evolveum.midpoint.prism.delta.ObjectDelta;
import com.evolveum.midpoint.schema.ProvisioningDiag;
import com.evolveum.midpoint.schema.RepositoryDiag;
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.exception.CommunicationException;
import com.evolveum.midpoint.util.exception.ConfigurationException;
import com.evolveum.midpoint.util.exception.ExpressionEvaluationException;
import com.evolveum.midpoint.util.exception.ObjectAlreadyExistsException;
import com.evolveum.midpoint.util.exception.ObjectNotFoundException;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.util.exception.SecurityViolationException;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;

/**
* A service provided by the IDM Model focused on system diagnostic. It allows to retrieve diagnostic data
Expand Down Expand Up @@ -102,5 +97,6 @@ public interface ModelDiagnosticService {
*
* EXPERIMENTAL. (TODO find a better place)
*/
String exportDataModel(Task task, OperationResult parentResult) throws SchemaException;
String exportDataModel(Collection<String> resourceOids, Task task, OperationResult parentResult)
throws SchemaException, ConfigurationException, ObjectNotFoundException, CommunicationException, SecurityViolationException;
}
Expand Up @@ -24,7 +24,7 @@
import com.evolveum.midpoint.schema.ProvisioningDiag;
import com.evolveum.midpoint.security.api.AuthorizationConstants;
import com.evolveum.midpoint.security.api.SecurityEnforcer;
import com.evolveum.midpoint.util.exception.SecurityViolationException;
import com.evolveum.midpoint.util.exception.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
Expand All @@ -46,9 +46,6 @@
import com.evolveum.midpoint.util.DebugUtil;
import com.evolveum.midpoint.util.MiscUtil;
import com.evolveum.midpoint.util.RandomString;
import com.evolveum.midpoint.util.exception.ObjectAlreadyExistsException;
import com.evolveum.midpoint.util.exception.ObjectNotFoundException;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;
Expand Down Expand Up @@ -466,10 +463,11 @@ private <T extends ObjectType> PrismObjectDefinition<T> getObjectDefinition(Clas
}

@Override
public String exportDataModel(Task task, OperationResult parentResult) throws SchemaException {
public String exportDataModel(Collection<String> resourceOids, Task task, OperationResult parentResult)
throws SchemaException, ConfigurationException, ObjectNotFoundException, CommunicationException, SecurityViolationException {
OperationResult result = parentResult.createSubresult(EXPORT_DATA_MODEL);
try {
String rv = dataModelVisualizer.visualize(task, result);
String rv = dataModelVisualizer.visualize(resourceOids, task, result);
result.computeStatusIfUnknown();
return rv;
} catch(Throwable t) {
Expand Down
@@ -0,0 +1,21 @@
package com.evolveum.midpoint.model.impl.dataModel;

import com.evolveum.midpoint.prism.path.ItemPath;
import org.jetbrains.annotations.NotNull;

/**
* @author mederly
*/
public class AdHocDataItem extends DataItem {

@NotNull private final ItemPath itemPath;

public AdHocDataItem(@NotNull ItemPath itemPath) {
this.itemPath = itemPath;
}

@Override
public String getNodeName() {
return "Unresolved: " + itemPath;
}
}
@@ -0,0 +1,12 @@
package com.evolveum.midpoint.model.impl.dataModel;

/**
* @author mederly
*/
public abstract class DataItem {

public abstract String getNodeName();
public abstract String getNodeLabel();
public abstract String getNodeStyleAttributes();

}

0 comments on commit 1035e00

Please sign in to comment.