Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/Evolveum/midpoint
Browse files Browse the repository at this point in the history
  • Loading branch information
KaterynaHonchar committed Mar 28, 2017
2 parents e2f42f9 + e500731 commit c20b78f
Show file tree
Hide file tree
Showing 25 changed files with 195 additions and 204 deletions.
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Details
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Back
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Přidat položku do nákupního košíku
MultiButtonPanel.assignmentDetailsPopupTitle=Podrobnosti přiřazení
MultiButtonPanel.detailsLink=Podrobnosti
MultiButtonPanel.addToCartLink=Přidat do košíku
MultiButtonPanel.alreadyAssignedIconTitle=Již přiřazeno
PageAssignmentDetails.title=Podrobnosti přiřazení
PageAssignmentDetails.backButton=Zpět
PageAssignmentDetails.addToCartButton=Přidat do košíku
Expand Down
251 changes: 126 additions & 125 deletions gui/admin-gui/src/main/resources/localization/Midpoint_de.properties

Large diffs are not rendered by default.

Expand Up @@ -1225,10 +1225,10 @@ PageCertCampaigns.menu.delete=Delete campaign
PageCertCampaigns.menu.deleteSelected=Delete selected campaigns
PageCertCampaigns.menu.startSelected=Start selected campaigns
PageCertCampaigns.message.closeCampaignConfirmMultiple=Do you really want to close selected {0} campaigns?
PageCertCampaigns.message.closeCampaignConfirmSingle=Do you really want to close campaign '{0}' ?
PageCertCampaigns.message.closeCampaignConfirmSingle=Do you really want to close campaign '{0}'?
PageCertCampaigns.message.closeStageConfirmSingle=Do you really want to close current stage for '{0}'?
PageCertCampaigns.message.deleteCampaignConfirmMultiple=Do you really want to delete selected {0} campaigns?
PageCertCampaigns.message.deleteCampaignConfirmSingle=Do you really want to delete campaign '{0}' ?
PageCertCampaigns.message.deleteCampaignConfirmSingle=Do you really want to delete campaign '{0}'?
PageCertCampaigns.message.noCampaignsSelected=No relevant campaigns selected
PageCertCampaigns.nowForCampaign=(campaign\: now)
PageCertCampaigns.nowForStage=now
Expand Down Expand Up @@ -1968,7 +1968,7 @@ pageTaskEdit.subtasksAndThreads=Subtasks and threads
pageTaskEdit.statesAndActions=States and actions
pageTaskEdit.result=Result
pageTaskEdit.subtasksLabel=Subtasks
pageTaskEdit.suspendReq=For editing is necessary to suspend the task
pageTaskEdit.suspendReq=For editing, it is necessary to suspend the task
pageTaskEdit.taskState=Task state
pageTaskEdit.threadAction=Thread action
pageTaskEdit.threadStop=Thread stop action
Expand Down Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Details
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Back
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Detalles
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Atrás
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Details
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Back
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -2063,7 +2063,7 @@ pageTasks.stalledSince=STALLED since {0} at {1}
pageTasks.state=Olek
pageTasks.subtasks=Kuva alamülesanded
pageTasks.task.category=Kategooria
pageTasks.task.currentRunTime=Current run time
pageTasks.task.currentRunTime=Praegune käitusaeg
pageTasks.task.detail=Detail
pageTasks.task.executingAt=Executing at
pageTasks.task.execution=Täitmine
Expand Down Expand Up @@ -2964,7 +2964,7 @@ PageAdmin.menu.assignments=Omistused
PageAdmin.menu.credentials=Identimisteave
PageAdmin.menu.request=Taotle roll
PageTemplate.version=Versioon\:
PageTemplate.copy=<strong>Copyright &copy; 2010-2017 <a href\="https\://www.evolveum.com/" target\="_blank">Evolveum</a>&reg; and partners.&nbsp;</strong>
PageTemplate.copy=<strong>Autoriõigus &copy; 2010-2017 <a href\="https\://www.evolveum.com/" target\="_blank">Evolveum</a>&reg; ja partnerid.&nbsp;</strong>
PageTemplate.toggleNavigation=Toggle navigation
PageTemplate.user=kasutaja
PageTemplate.couldntNavigateBreadcrumb=Couldn't navigate breadcrumb, reason\: {0}
Expand Down Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Lisa objekt ostukorvi
MultiButtonPanel.assignmentDetailsPopupTitle=Omistuse üksikasjad
MultiButtonPanel.detailsLink=Üksikasjad
MultiButtonPanel.addToCartLink=Lisa korvi
MultiButtonPanel.alreadyAssignedIconTitle=Juba omistatud
PageAssignmentDetails.title=Omistuse üksikasjad
PageAssignmentDetails.backButton=Tagasi
PageAssignmentDetails.addToCartButton=Lisa korvi
Expand Down Expand Up @@ -3487,15 +3488,15 @@ PageResetPasswordConfirmation.confirmation.error=Parooli lähtestamine pole luba
PageResetPasswordConfirmation.authnetication.failed=Vale kasutajanimi ja/või parool
ItemPathSegmentPanel.itemToSearch=Otsitav {0}
DecisionDto.automaticallyApproved=(kinnitatud automaatselt)
DecisionDto.automaticallyRejected=(automatically rejected)
DecisionDto.approvedDueToTimeout=(approved due to the timeout)
DecisionDto.rejectedDueToTimeout=(rejected due to the timeout)
DecisionDto.automaticallyRejected=(tagasi lükatud automaatselt)
DecisionDto.approvedDueToTimeout=(kinnitatud ajalõpu tõttu)
DecisionDto.rejectedDueToTimeout=(tagasi lükatud ajalõpu tõttu)
DecisionDto.AUTO_APPROVAL_CONDITION=(auto-approval condition)
DecisionDto.NO_APPROVERS_FOUND=(kinnitajaid ei leitud)
wf.object=Objekt
wf.target=Target
wf.originalAssignee=Original assignee
wf.currentAssignee=Current assignee(s)
wf.target=Sihtüksus
wf.originalAssignee=Algne täitja
wf.currentAssignee=Praegused täitjad
wf.stageNumber=Etapi number
wf.stageCount=Etapi arv
wf.stageName=Etapi nimi
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Details
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Back
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Details
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Back
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -3082,9 +3082,9 @@ ScenePanel.item=Pozycja
ScenePanel.oldValue=Poprzednia wartość
ScenePanel.newValue=Nowa wartość
ScenePanel.value=Wartość
SceneItemLinePanel.removedValue=Removed value
SceneItemLinePanel.addedValue=Added value
SceneItemLinePanel.unchangedValue=Unchanged value
SceneItemLinePanel.removedValue=Usunięta wartość
SceneItemLinePanel.addedValue=Dodana wartość
SceneItemLinePanel.unchangedValue=Niezmieniona wartość
operation.com.evolveum.midpoint.web.page.admin.resources.ResourceContentTabPanel.changeOwner=Zmień właściciela (GUI)
TaskSummaryPanel.progressWithTotalKnown=Postęp\: {0} z {1}
TaskSummaryPanel.progressWithTotalUnknown=Postęp\: {0}
Expand Down Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Dodaj pozycję do koszyka
MultiButtonPanel.assignmentDetailsPopupTitle=Szczegóły przypisania
MultiButtonPanel.detailsLink=Szczegóły
MultiButtonPanel.addToCartLink=Dodaj do koszyka
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Szczegóły przypisania
PageAssignmentDetails.backButton=Wstecz
PageAssignmentDetails.addToCartButton=Dodaj do koszyka
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Incluir item para carrinho de compras
MultiButtonPanel.assignmentDetailsPopupTitle=Detalhes de atribuição
MultiButtonPanel.detailsLink=Detalhes
MultiButtonPanel.addToCartLink=Adicionar ao carrinho
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Detalhes de atribuição
PageAssignmentDetails.backButton=Voltar
PageAssignmentDetails.addToCartButton=Adicionar ao carrinho
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Добавить элемент в Корзину
MultiButtonPanel.assignmentDetailsPopupTitle=Сведения о назначении
MultiButtonPanel.detailsLink=Детали
MultiButtonPanel.addToCartLink=Добавить в Корзину
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Сведения о назначении
PageAssignmentDetails.backButton=Назад
PageAssignmentDetails.addToCartButton=Добавить в Корзину
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Detaily
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Späť
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -3374,6 +3374,7 @@ MultiButtonPanel.plusIconTitle=Add item to shopping cart
MultiButtonPanel.assignmentDetailsPopupTitle=Assignment details
MultiButtonPanel.detailsLink=Detaylar
MultiButtonPanel.addToCartLink=Add to cart
MultiButtonPanel.alreadyAssignedIconTitle=Already assigned
PageAssignmentDetails.title=Assignment details
PageAssignmentDetails.backButton=Geri
PageAssignmentDetails.addToCartButton=Add to cart
Expand Down
Expand Up @@ -331,18 +331,8 @@ private ResourceType resolveTarget(String sourceDescription, Task task, Operatio
if (assignmentPathVariables == null) {
assignmentPathVariables = LensUtil.computeAssignmentPathVariables(assignmentPath);
}

if (assignmentPathVariables != null) {
variables.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ROLE,
assignmentPathVariables.getImmediateRole());
variables.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ASSIGNMENT,
assignmentPathVariables.getImmediateAssignment());
variables.addVariableDefinition(ExpressionConstants.VAR_THIS_ASSIGNMENT,
assignmentPathVariables.getThisAssignment());
variables.addVariableDefinition(ExpressionConstants.VAR_FOCUS_ASSIGNMENT,
assignmentPathVariables.getFocusAssignment());
}
LOGGER.info("Expression valriables for filter evaluation: {}", variables);
Utils.addAssignmentPathVariables(assignmentPathVariables, variables);
LOGGER.info("Expression variables for filter evaluation: {}", variables);

ObjectFilter origFilter = QueryConvertor.parseFilter(constructionType.getResourceRef().getFilter(),
ResourceType.class, prismContext);
Expand All @@ -358,27 +348,21 @@ private ResourceType resolveTarget(String sourceDescription, Task task, Operatio
}

final Collection<PrismObject<ResourceType>> results = new ArrayList<>();
ResultHandler<ResourceType> handler = new ResultHandler<ResourceType>() {

@Override
public boolean handle(PrismObject<ResourceType> object, OperationResult parentResult) {
LOGGER.info("Found object {}", object);
return results.add(object);
}
ResultHandler<ResourceType> handler = (object, parentResult) -> {
LOGGER.info("Found object {}", object);
return results.add(object);
};
objectResolver.searchIterative(ResourceType.class, ObjectQuery.createObjectQuery(evaluatedFilter),
null, handler, task, result);

if (org.apache.commons.collections.CollectionUtils.isEmpty(results)) {
throw new IllegalArgumentException("Got null target from repository, filter:" + evaluatedFilter
+ ", class:" + ResourceType.class + " (should not happen, probably a bug) in "
+ sourceDescription);
throw new IllegalArgumentException("Got no target from repository, filter:" + evaluatedFilter
+ ", class:" + ResourceType.class + " in " + sourceDescription);
}

if (results.size() > 1) {
throw new IllegalArgumentException("Got more than one target from repository, filter:"
+ evaluatedFilter + ", class:" + ResourceType.class
+ " (should not happen, probably a bug) in " + sourceDescription);
+ evaluatedFilter + ", class:" + ResourceType.class + " in " + sourceDescription);
}

PrismObject<ResourceType> target = results.iterator().next();
Expand Down
Expand Up @@ -31,6 +31,7 @@
import com.evolveum.midpoint.model.api.context.EvaluatedPolicyRule;
import com.evolveum.midpoint.model.api.context.EvaluatedPolicyRuleTrigger;
import com.evolveum.midpoint.model.common.expression.*;
import com.evolveum.midpoint.model.impl.util.Utils;
import com.evolveum.midpoint.prism.polystring.PolyString;
import com.evolveum.midpoint.prism.polystring.PrismDefaultPolyStringNormalizer;
import com.evolveum.midpoint.schema.SchemaConstantsGenerated;
Expand Down Expand Up @@ -975,19 +976,9 @@ private static void mergeExtension(PrismContainer<Containerable> magicExtension,
}

public static <V extends PrismValue,D extends ItemDefinition> Mapping.Builder<V,D> addAssignmentPathVariables(Mapping.Builder<V,D> builder, AssignmentPathVariables assignmentPathVariables) {
if (assignmentPathVariables != null ) {
return builder
.addVariableDefinition(ExpressionConstants.VAR_ASSIGNMENT_PATH, assignmentPathVariables.getAssignmentPath())
.addVariableDefinition(ExpressionConstants.VAR_ASSIGNMENT, assignmentPathVariables.getMagicAssignment())
.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ASSIGNMENT, assignmentPathVariables.getImmediateAssignment())
.addVariableDefinition(ExpressionConstants.VAR_THIS_ASSIGNMENT, assignmentPathVariables.getThisAssignment())
.addVariableDefinition(ExpressionConstants.VAR_FOCUS_ASSIGNMENT, assignmentPathVariables.getFocusAssignment())
.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ROLE, assignmentPathVariables.getImmediateRole());
} else {
// to avoid "no such variable" exceptions in boundary cases
// for null/empty paths we might consider creating empty AssignmentPathVariables objects to keep null/empty path distinction
return builder.addVariableDefinition(ExpressionConstants.VAR_ASSIGNMENT_PATH, (Object) null);
}
ExpressionVariables expressionVariables = new ExpressionVariables();
Utils.addAssignmentPathVariables(assignmentPathVariables, expressionVariables);
return builder.addVariableDefinitions(expressionVariables.getMap());
}

public static <F extends ObjectType> void checkContextSanity(LensContext<F> context, String activityDescription,
Expand Down
Expand Up @@ -570,11 +570,18 @@ public static <O extends ObjectType> void addDefaultExpressionVariables(Expressi
}

public static void addAssignmentPathVariables(AssignmentPathVariables assignmentPathVariables, ExpressionVariables expressionVariables) {
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_ASSIGNMENT, assignmentPathVariables.getMagicAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ASSIGNMENT, assignmentPathVariables.getImmediateAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_THIS_ASSIGNMENT, assignmentPathVariables.getThisAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_FOCUS_ASSIGNMENT, assignmentPathVariables.getFocusAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ROLE, assignmentPathVariables.getImmediateRole());
if (assignmentPathVariables != null) {
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_ASSIGNMENT, assignmentPathVariables.getMagicAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_ASSIGNMENT_PATH, assignmentPathVariables.getAssignmentPath());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ASSIGNMENT, assignmentPathVariables.getImmediateAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_THIS_ASSIGNMENT, assignmentPathVariables.getThisAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_FOCUS_ASSIGNMENT, assignmentPathVariables.getFocusAssignment());
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_IMMEDIATE_ROLE, assignmentPathVariables.getImmediateRole());
} else {
// to avoid "no such variable" exceptions in boundary cases
// for null/empty paths we might consider creating empty AssignmentPathVariables objects to keep null/empty path distinction
expressionVariables.addVariableDefinition(ExpressionConstants.VAR_ASSIGNMENT_PATH, null);
}
}

public static String getPolicyDesc(ObjectSynchronizationType synchronizationPolicy) {
Expand Down
Expand Up @@ -25,9 +25,6 @@ xmlns:ext="http://midpoint.evolveum.com/xml/ns/samples/piracy"
</extension>
<assignment id="1">
<targetRef oid="12345678-d34d-b33f-f00d-55555555a010" type="RoleType"/> <!-- job metarole -->
</assignment>
<assignment id="2">
<targetRef oid="12345678-d34d-b33f-f00d-55555555a020" type="RoleType"/> <!-- generic metarole (see comment in that role) -->
</assignment>
<assignment id="4">
<policyRule>
Expand Down
Expand Up @@ -25,9 +25,6 @@
</extension>
<assignment id="1">
<targetRef oid="12345678-d34d-b33f-f00d-55555555a010" type="RoleType"/> <!-- job metarole -->
</assignment>
<assignment id="2">
<targetRef oid="12345678-d34d-b33f-f00d-55555555a020" type="RoleType"/> <!-- generic metarole (see comment in that role) -->
</assignment>
<assignment id="4">
<policyRule>
Expand Down
Expand Up @@ -26,9 +26,6 @@ xmlns:ext="http://midpoint.evolveum.com/xml/ns/samples/piracy"
<assignment id="1">
<targetRef oid="12345678-d34d-b33f-f00d-55555555a010" type="RoleType"/> <!-- job metarole -->
</assignment>
<assignment id="2">
<targetRef oid="12345678-d34d-b33f-f00d-55555555a020" type="RoleType"/> <!-- generic metarole (see comment in that role) -->
</assignment>
<inducement id="3">
<targetRef oid="12345678-d34d-b33f-f00d-55555555a001" type="RoleType"/> <!-- employee role -->
</inducement>
Expand Down
Expand Up @@ -51,7 +51,10 @@ metaroles:
<q:equal>
<q:path>name</q:path>
<expression>
<path>$immediateRole/extension/ext:resourceName</path> <!-- should be Dummy Resource -->
<path>$assignment/extension/ext:resourceName</path> <!-- should be Dummy Resource -->
<!-- originally here was "immediateRole"; however, this does not work on the path of
(e.g.) Engineer->JobMetarole->GenericMetarole ... so perhaps the easier solution
is to use magic assignment that contains all the extensions on the path -->
</expression>
</q:equal>
</filter>
Expand Down
Expand Up @@ -35,6 +35,14 @@ metaroles:
- Generic Metarole: assigned to Visitor and Customer
- Job Metarole (induces Generic Metarole): assigned to Contractor, Employee, Engineer, Manager

Job Metarole ========[I]===========> Generic Metarole
^^ ^ ^ ^
|| | | |
+=========|| | | |
| | +=======|==+===[I]====+ | |
| | | | | | | |
| | | | | V | |
Contractor Engineer Manager Employee Visitor Customer
-->

<role oid="12345678-d34d-b33f-f00d-55555555a020"
Expand Down

0 comments on commit c20b78f

Please sign in to comment.