Skip to content

Commit

Permalink
Merge branch 'master' of github.com:Evolveum/midpoint
Browse files Browse the repository at this point in the history
  • Loading branch information
semancik committed Oct 28, 2016
2 parents e9b3313 + 80333f3 commit a538f2b
Show file tree
Hide file tree
Showing 615 changed files with 30,985 additions and 26,106 deletions.
17 changes: 16 additions & 1 deletion build-system/pom.xml
Expand Up @@ -84,7 +84,8 @@
<jasper.version>6.1.1</jasper.version>
<derby.version>10.11.1.1</derby.version>
<wro4j.version>1.8.0</wro4j.version>
<jackson.version>2.3.3</jackson.version>
<jackson.version>2.8.3</jackson.version>
<snakeyaml.version>1.15</snakeyaml.version>
<surefire.version>2.19.1</surefire.version>
</properties>
<dependencyManagement>
Expand Down Expand Up @@ -902,6 +903,11 @@
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>${snakeyaml.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
Expand Down Expand Up @@ -931,6 +937,15 @@
<groupId>org.apache.maven</groupId>
<artifactId>maven-plugin-api</artifactId>
<version>2.0</version>
<!--
<version>3.1.0</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
</exclusion>
</exclusions>
-->
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
Expand Down
6 changes: 6 additions & 0 deletions dist/midpoint-api/pom.xml
Expand Up @@ -66,6 +66,12 @@
<version>3.5-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<!--<dependency>-->
<!--<groupId>com.evolveum.midpoint.infra</groupId>-->
<!--<artifactId>prism</artifactId>-->
<!--<version>3.5-SNAPSHOT</version>-->
<!--<scope>compile</scope>-->
<!--</dependency>-->
<dependency>
<groupId>com.evolveum.midpoint.infra</groupId>
<artifactId>util</artifactId>
Expand Down
Expand Up @@ -17,7 +17,6 @@
package com.evolveum.midpoint.gui.api.component.result;

import com.evolveum.midpoint.gui.api.page.PageBase;
import com.evolveum.midpoint.prism.PrismContext;
import com.evolveum.midpoint.prism.Visitable;
import com.evolveum.midpoint.prism.Visitor;
import com.evolveum.midpoint.schema.result.OperationResult;
Expand Down Expand Up @@ -142,7 +141,7 @@ public static OpResult getOpResult(PageBase page, OperationResult result){
try {
OperationResultType resultType = result.createOperationResultType();
ObjectFactory of = new ObjectFactory();
opResult.xml = page.getPrismContext().serializeAtomicValue(of.createOperationResult(resultType), PrismContext.LANG_XML);
opResult.xml = page.getPrismContext().xmlSerializer().serialize(of.createOperationResult(resultType));
} catch (SchemaException|RuntimeException ex) {
String m = "Can't create xml: " + ex;
// error(m);
Expand Down
Expand Up @@ -33,6 +33,7 @@
import com.evolveum.midpoint.web.page.admin.configuration.*;
import com.evolveum.midpoint.web.page.admin.reports.*;
import com.evolveum.midpoint.web.page.self.*;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.Validate;
import org.apache.wicket.AttributeModifier;
Expand Down Expand Up @@ -159,10 +160,6 @@
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.web.util.validation.MidpointFormValidatorRegistry;
import com.evolveum.midpoint.wf.api.WorkflowManager;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AdminGuiConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.RichHyperlinkType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.UserType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.WorkItemType;

/**
* @author lazyman
Expand Down Expand Up @@ -870,8 +867,20 @@ public RestartResponseException getRestartResponseException(Class<? extends Page
return new RestartResponseException(defaultBackPageClass);
}

protected <P extends Object> void validateObject(String xmlObject, final Holder<P> objectHolder,
boolean validateSchema, OperationResult result) {
protected <O extends ObjectType> void validateObject(String lexicalRepresentation, final Holder<PrismObject<O>> objectHolder,
String language, boolean validateSchema, OperationResult result) {

if (language == null || PrismContext.LANG_JSON.equals(language) || PrismContext.LANG_YAML.equals(language)) {
PrismObject<O> object;
try {
object = getPrismContext().parserFor(lexicalRepresentation).language(language).parse();
objectHolder.setValue(object);
} catch (RuntimeException | SchemaException e) {
result.recordFatalError("Couldn't parse object: " + e.getMessage(), e);
}
return;
}

EventHandler handler = new EventHandler() {

@Override
Expand All @@ -883,7 +892,7 @@ public EventResult preMarshall(Element objectElement, Node postValidationTree,
@Override
public <T extends Objectable> EventResult postMarshall(PrismObject<T> object, Element objectElement,
OperationResult objectResult) {
objectHolder.setValue((P) object);
objectHolder.setValue((PrismObject<O>) object);
return EventResult.cont();
}

Expand All @@ -894,7 +903,7 @@ public void handleGlobalError(OperationResult currentResult) {
Validator validator = new Validator(getPrismContext(), handler);
validator.setVerbose(true);
validator.setValidateSchema(validateSchema);
validator.validateObject(xmlObject, result);
validator.validateObject(lexicalRepresentation, result);

result.computeStatus();
}
Expand Down
Expand Up @@ -16,16 +16,32 @@

package com.evolveum.midpoint.web.component;

import com.evolveum.midpoint.prism.PrismContext;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.OnDomReadyHeaderItem;
import org.apache.wicket.markup.html.form.TextArea;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.jetbrains.annotations.Nullable;

import java.util.HashMap;
import java.util.Map;

public class AceEditor extends TextArea<String> {

public static final String MODE_XML = "ace/mode/xml";
public static final String MODE_JSON = "ace/mode/json";
public static final String MODE_YAML = "ace/mode/yaml";

public static final Map<String,String> MODES = new HashMap<>();

static {
MODES.put(null, MODE_XML);
MODES.put(PrismContext.LANG_XML, MODE_XML);
MODES.put(PrismContext.LANG_JSON, MODE_JSON);
MODES.put(PrismContext.LANG_YAML, MODE_YAML);
}

private IModel<Boolean> readonly = new Model(false);

Expand Down Expand Up @@ -88,7 +104,11 @@ public void setMode(String mode) {
this.mode = mode;
}

public void setReadonly(boolean readonly) {
public void setModeForDataLanguage(@Nullable String dataLanguage) {
setMode(MODES.get(dataLanguage));
}

public void setReadonly(boolean readonly) {
this.readonly.setObject(readonly);
}

Expand All @@ -102,4 +122,5 @@ public void refreshReadonly(AjaxRequestTarget target) {

target.appendJavaScript(sb.toString());
}

}
Expand Up @@ -22,6 +22,7 @@

import javax.xml.namespace.QName;

import com.evolveum.midpoint.common.refinery.RefinedResourceSchemaImpl;
import org.apache.commons.lang.Validate;

import com.evolveum.midpoint.common.refinery.RefinedObjectClassDefinition;
Expand Down Expand Up @@ -217,7 +218,7 @@ private List<ACAttributeDto> prepareAssignmentAttributes(AssignmentType assignme

try {
PrismContext prismContext = pageBase.getPrismContext();
RefinedResourceSchema refinedSchema = RefinedResourceSchema.getRefinedSchema(resource,
RefinedResourceSchema refinedSchema = RefinedResourceSchemaImpl.getRefinedSchema(resource,
LayerType.PRESENTATION, prismContext);
RefinedObjectClassDefinition objectClassDefinition = refinedSchema
.getRefinedDefinition(ShadowKindType.ACCOUNT, construction.getIntent());
Expand Down
Expand Up @@ -18,6 +18,7 @@

import com.evolveum.midpoint.common.refinery.RefinedObjectClassDefinition;
import com.evolveum.midpoint.common.refinery.RefinedResourceSchema;
import com.evolveum.midpoint.common.refinery.RefinedResourceSchemaImpl;
import com.evolveum.midpoint.gui.api.GuiStyleConstants;
import com.evolveum.midpoint.gui.api.component.BasePanel;
import com.evolveum.midpoint.gui.api.component.objecttypeselect.ObjectTypeSelectPanel;
Expand All @@ -32,6 +33,7 @@
import com.evolveum.midpoint.prism.query.ObjectFilter;
import com.evolveum.midpoint.prism.query.ObjectQuery;
import com.evolveum.midpoint.prism.query.OrFilter;
import com.evolveum.midpoint.prism.query.builder.QueryBuilder;
import com.evolveum.midpoint.schema.GetOperationOptions;
import com.evolveum.midpoint.schema.SelectorOptions;
import com.evolveum.midpoint.schema.result.OperationResult;
Expand Down Expand Up @@ -536,13 +538,9 @@ private WebMarkupContainer createTenantContainer() {

@Override
protected ObjectQuery getChooseQuery() {
ObjectQuery query = new ObjectQuery();

ObjectFilter filter = EqualFilter.createEqual(OrgType.F_TENANT, OrgType.class,
getPageBase().getPrismContext(), null, true);
query.setFilter(filter);

return query;
return QueryBuilder.queryFor(OrgType.class, getPageBase().getPrismContext())
.item(OrgType.F_TENANT).eq(true)
.build();
}

@Override
Expand Down Expand Up @@ -581,16 +579,10 @@ private WebMarkupContainer createOrgContainer() {

@Override
protected ObjectQuery getChooseQuery() {
ObjectQuery query = new ObjectQuery();

ObjectFilter filter = OrFilter.createOr(
EqualFilter.createEqual(OrgType.F_TENANT, OrgType.class,
getPageBase().getPrismContext(), null, false),
EqualFilter.createEqual(OrgType.F_TENANT, OrgType.class,
getPageBase().getPrismContext(), null, null));
query.setFilter(filter);

return query;
return QueryBuilder.queryFor(OrgType.class, getPageBase().getPrismContext())
.item(OrgType.F_TENANT).eq(false)
.or().item(OrgType.F_TENANT).isNull()
.build();
}

@Override
Expand Down Expand Up @@ -740,7 +732,7 @@ private List<ACAttributeDto> loadAttributes() {
}

PrismContext prismContext = getPageBase().getPrismContext();
RefinedResourceSchema refinedSchema = RefinedResourceSchema.getRefinedSchema(resource,
RefinedResourceSchema refinedSchema = RefinedResourceSchemaImpl.getRefinedSchema(resource,
LayerType.PRESENTATION, prismContext);
RefinedObjectClassDefinition objectClassDefinition = refinedSchema
.getRefinedDefinition(ShadowKindType.ACCOUNT, construction.getIntent());
Expand Down
Expand Up @@ -26,6 +26,7 @@
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.prism.query.*;
import com.evolveum.midpoint.prism.query.builder.QueryBuilder;
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.security.api.AuthorizationConstants;
import com.evolveum.midpoint.util.logging.LoggingUtils;
Expand Down Expand Up @@ -242,10 +243,10 @@ private IModel<ObjectFilter> getFilterModel(final boolean isRequestableFilter){
return new IModel<ObjectFilter>() {
@Override
public ObjectFilter getObject() {
ItemPath path = new ItemPath(FocusType.F_ACTIVATION, ActivationType.F_ADMINISTRATIVE_STATUS);
ObjectFilter archivedRolesFilter = EqualFilter.createEqual(path, RoleType.class,
getPageBase().getPrismContext(), null, ActivationStatusType.ARCHIVED);
ObjectFilter filter = null;
ObjectFilter archivedRolesFilter = QueryBuilder.queryFor(RoleType.class, getPageBase().getPrismContext())
.item(RoleType.F_ACTIVATION, ActivationType.F_ADMINISTRATIVE_STATUS).eq(ActivationStatusType.ARCHIVED)
.buildFilter();
ObjectFilter filter;
if (isRequestableFilter) {
ObjectFilter assignableRolesFilter = getAssignableRolesFilter();
if (assignableRolesFilter instanceof NotFilter) {
Expand Down Expand Up @@ -336,8 +337,9 @@ protected void editValuePerformed(AjaxRequestTarget target, IModel<OrgType> rowM
supportedTypes.add(getPageBase().getPrismContext().getSchemaRegistry()
.findObjectDefinitionByCompileTimeClass(OrgType.class).getTypeName());

ObjectFilter filter = EqualFilter.createEqual(OrgType.F_TENANT, OrgType.class,
getPageBase().getPrismContext(), null, true);
ObjectFilter filter = QueryBuilder.queryFor(OrgType.class, getPageBase().getPrismContext())
.item(OrgType.F_TENANT).eq(true)
.buildFilter();

ObjectBrowserPanel<OrgType> tenantPanel = new ObjectBrowserPanel<OrgType>(getPageBase().getMainPopupBodyId(),
OrgType.class, supportedTypes, false, getPageBase(), filter) {
Expand Down
Expand Up @@ -7,6 +7,7 @@
import com.evolveum.midpoint.prism.query.NotFilter;
import com.evolveum.midpoint.prism.query.ObjectFilter;
import com.evolveum.midpoint.prism.query.ObjectQuery;
import com.evolveum.midpoint.prism.query.builder.QueryBuilder;
import com.evolveum.midpoint.schema.GetOperationOptions;
import com.evolveum.midpoint.schema.SelectorOptions;
import com.evolveum.midpoint.schema.result.OperationResult;
Expand Down Expand Up @@ -283,8 +284,10 @@ private void countShadows(boolean isAccountShadow){
options.add(SelectorOptions.create(ItemPath.EMPTY_PATH, opt));

try {
ObjectFilter filter = EqualFilter.createEqual(ShadowType.F_KIND, ShadowType.class, getPagebase().getPrismContext(), null, ShadowKindType.ACCOUNT);
if(isAccountShadow){
ObjectFilter filter = QueryBuilder.queryFor(ShadowType.class, getPagebase().getPrismContext())
.item(ShadowType.F_KIND).eq(ShadowKindType.ACCOUNT)
.buildFilter();
if (isAccountShadow) {
ObjectQuery query = ObjectQuery.createObjectQuery(filter);
dto.setAccountShadowCount(getPagebase().getModelService().countObjects(ShadowType.class, query, options, task, result));
dto.setObjectsToDelete(dto.getObjectsToDelete() + dto.getAccountShadowCount());
Expand Down
Expand Up @@ -18,6 +18,7 @@
import java.util.ArrayList;
import java.util.List;

import com.evolveum.midpoint.common.refinery.RefinedResourceSchemaImpl;
import org.apache.commons.lang.StringUtils;
import org.apache.wicket.markup.html.form.IChoiceRenderer;
import org.apache.wicket.model.IModel;
Expand Down Expand Up @@ -48,7 +49,7 @@ private static IModel<? extends List<? extends RefinedObjectClassDefinition>> cr
public List<? extends RefinedObjectClassDefinition> getObject() {
RefinedResourceSchema refinedSchema;
try {
refinedSchema = RefinedResourceSchema.getRefinedSchema(resourceModel.getObject());
refinedSchema = RefinedResourceSchemaImpl.getRefinedSchema(resourceModel.getObject());
} catch (SchemaException e) {
throw new IllegalArgumentException(e.getMessage(),e);
}
Expand Down
Expand Up @@ -71,7 +71,7 @@ private String loadFilterClause(PrismContext prismContext) {
T filter = getModelObject();
if (filter.containsFilterClause()) {
RootXNode clause = filter.getFilterClauseAsRootXNode();
String xml = prismContext.serializeXNodeToString(clause, PrismContext.LANG_XML);
String xml = prismContext.xmlSerializer().serialize(clause);
return WebXmlUtil.stripNamespaceDeclarations(xml);
} else {
return null;
Expand Down Expand Up @@ -127,7 +127,7 @@ private void updateFilterClause(PrismContext context) throws SchemaException {
final String clauseString = clauseStringModel.getObject();
if (StringUtils.isNotEmpty(clauseString)) {
LOGGER.trace("Filter Clause to serialize: {}", clauseString);
RootXNode filterClauseNode = (RootXNode) context.parseToXNode(clauseString, PrismContext.LANG_XML);
RootXNode filterClauseNode = (RootXNode) context.parserFor(clauseString).xml().parseToXNode();
getModelObject().setFilterClauseXNode(filterClauseNode);
} else {
if (getModelObject() != null) {
Expand Down
Expand Up @@ -63,12 +63,12 @@ public ExpressionTypeDto(@Nullable ExpressionType expression, @NotNull PrismCont
private void loadExpression(PrismContext context) {
try {
if (expressionObject.getExpressionEvaluator().size() == 1) {
expression = context.serializeAtomicValue(expressionObject.getExpressionEvaluator().get(0), PrismContext.LANG_XML);
expression = context.xmlSerializer().serialize(expressionObject.getExpressionEvaluator().get(0));
} else {
StringBuilder sb = new StringBuilder();

for (JAXBElement<?> element: expressionObject.getExpressionEvaluator()) {
String subElement = context.serializeAtomicValue(element, PrismContext.LANG_XML);
String subElement = context.xmlSerializer().serialize(element);
sb.append(subElement).append("\n");
}
expression = sb.toString();
Expand Down

0 comments on commit a538f2b

Please sign in to comment.