public ActivationType validFrom(XMLGregorianCalendar value) { setValidFrom(value); return this; }
public static void cleanupShadowActivation(ActivationType a) { a.setAdministrativeStatus(null); a.setEffectiveStatus(null); a.setValidFrom(null); a.setValidTo(null); a.setValidityStatus(null); a.setLockoutStatus(null); a.setLockoutExpirationTimestamp(null); a.setValidityChangeTimestamp(null); }
protected ActivationType createActivationType(ActivationStatusType administrativeStatus, XMLGregorianCalendar validFrom, XMLGregorianCalendar validTo) { ActivationType activationType = new ActivationType(); activationType.setAdministrativeStatus(administrativeStatus); activationType.setValidFrom(validFrom); activationType.setValidTo(validTo); return activationType; }
@Test public void test111JackAssignJudgeNotYetValid() throws Exception { final String TEST_NAME = "test111JackAssignJudgeNotYetValid"; displayTestTitle(TEST_NAME); // GIVEN Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); ActivationType activationType = new ActivationType(); XMLGregorianCalendar validFrom = clock.currentTimeXMLGregorianCalendar(); validFrom.add(XmlTypeConverter.createDuration(60*60*1000)); // one hour ahead activationType.setValidFrom(validFrom); testJackAssignRoleJudgeInvalid(TEST_NAME, activationType, task, result); }
public static void copyToJAXB(RActivation repo, ActivationType jaxb, PrismContext prismContext) { Validate.notNull(jaxb, "JAXB object must not be null."); Validate.notNull(repo, "Repo object must not be null."); if (repo.getAdministrativeStatus() != null) { jaxb.setAdministrativeStatus(repo.getAdministrativeStatus().getSchemaValue()); } if (repo.getEffectiveStatus() != null) { jaxb.setEffectiveStatus(repo.getEffectiveStatus().getSchemaValue()); } if (repo.getValidityStatus() != null) { jaxb.setValidityStatus(repo.getValidityStatus().getSchemaValue()); } jaxb.setValidFrom(repo.getValidFrom()); jaxb.setValidTo(repo.getValidTo()); jaxb.setDisableReason(repo.getDisableReason()); jaxb.setArchiveTimestamp(repo.getArchiveTimestamp()); jaxb.setDisableTimestamp(repo.getDisableTimestamp()); jaxb.setEnableTimestamp(repo.getEnableTimestamp()); jaxb.setValidityChangeTimestamp(repo.getValidityChangeTimestamp()); }
@Test public void test115JackAssignJudgeValid() throws Exception { final String TEST_NAME = "test115JackAssignJudgeValid"; displayTestTitle(TEST_NAME); // GIVEN Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); ActivationType activationType = new ActivationType(); XMLGregorianCalendar validFrom = clock.currentTimeXMLGregorianCalendar(); validFrom.add(XmlTypeConverter.createDuration(-60*60*1000)); // one hour ago activationType.setValidFrom(validFrom); XMLGregorianCalendar validTo = clock.currentTimeXMLGregorianCalendar(); validTo.add(XmlTypeConverter.createDuration(60*60*1000)); // one hour ahead activationType.setValidTo(validTo); testJackAssignRoleJudgeValid(TEST_NAME, activationType, task, result); }
@Test public void testAssignmentEquivalent() throws Exception { System.out.println("\n\n===[ testAssignmentEquivalent ]===\n"); PrismContext prismContext = PrismTestUtil.getPrismContext(); AssignmentType a1 = new AssignmentType(prismContext); ActivationType a1a = new ActivationType(prismContext); a1a.setValidFrom(XmlTypeConverter.createXMLGregorianCalendar(new Date())); a1a.setEffectiveStatus(ActivationStatusType.ENABLED); a1.setActivation(a1a); AssignmentType a2 = new AssignmentType(prismContext); ActivationType a2a = new ActivationType(prismContext); a2a.setEffectiveStatus(ActivationStatusType.ENABLED); a2.setActivation(a2a); // WHEN assertFalse(a1.equals(a2)); assertFalse(a1.asPrismContainerValue().equivalent(a2.asPrismContainerValue())); // a bit redundant assertFalse(a2.equals(a1)); assertFalse(a2.asPrismContainerValue().equivalent(a1.asPrismContainerValue())); // a bit redundant }
@Test public void test300HermanAssignJudgeNotYetValid() throws Exception { final String TEST_NAME = "test300HermanAssignJudgeNotYetValid"; displayTestTitle(TEST_NAME); // GIVEN Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); ActivationType activationType = new ActivationType(); judgeAssignmentValidFrom = clock.currentTimeXMLGregorianCalendar(); judgeAssignmentValidFrom.add(XmlTypeConverter.createDuration(10*60*1000)); // 10 minutes ahead activationType.setValidFrom(judgeAssignmentValidFrom); judgeAssignmentValidTo = clock.currentTimeXMLGregorianCalendar(); judgeAssignmentValidTo.add(XmlTypeConverter.createDuration(30*60*1000)); // 30 minutes ahead activationType.setValidTo(judgeAssignmentValidTo); display("Assignment validFrom", judgeAssignmentValidFrom); display("Assignment validTo", judgeAssignmentValidTo); // WHEN TestUtil.displayWhen(TEST_NAME); assignRole(USER_HERMAN_OID, ROLE_JUDGE_OID, activationType, task, result); // THEN TestUtil.displayThen(TEST_NAME); assertNoDummyAccount(null, USER_HERMAN_USERNAME); }
/** * Not much happens here yet. Role two is assigned. But it has validity in the future. * Therefore there are no changes in the account, no new pending deltas. * MID-4095 */ @Test public void test522AssignWillRoleTwoValidFrom() throws Exception { final String TEST_NAME = "test522AssignWillRoleTwoValidFrom"; displayTestTitle(TEST_NAME); // GIVEN Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); ActivationType activationType = new ActivationType(); roleTwoValidFromTimestamp = getTimestamp("PT2H"); activationType.setValidFrom(roleTwoValidFromTimestamp); // WHEN displayWhen(TEST_NAME); assignRole(userWillOid, getRoleTwoOid(), activationType, task, result); // THEN displayThen(TEST_NAME); assertSuccess(result); accountWillOid = assertUserAfter(userWillOid) .singleLink() .getOid(); accountWillReqestTimestampEnd = clock.currentTimeXMLGregorianCalendar(); assertAccountWillAfterAssign(TEST_NAME, USER_WILL_FULL_NAME_PIRATE, PendingOperationExecutionStatusType.EXECUTION_PENDING); }
activationType.setValidFrom(XmlTypeConverter.createXMLGregorianCalendar(millis)); continue;
/** * Preparation for MID-4198 "Disabled assignments project value in certain cases" */ @Test public void test200JackAssignCurrentPirateFutureSailor() throws Exception { final String TEST_NAME = "test200JackAssignCurrentPirateFutureSailor"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); PrismObject<UserType> userBefore = getUser(USER_JACK_OID); display("User jack before", userBefore); ActivationType activationType = new ActivationType(); activationType.setValidFrom(getTimestamp("P1M")); // WHEN displayWhen(TEST_NAME); assignRole(USER_JACK_OID, ROLE_PIRATE_OID, task, result); assignRole(USER_JACK_OID, ROLE_STRONG_SAILOR_OID, activationType, task, result); // THEN displayThen(TEST_NAME); assertSuccess(result); PrismObject<UserType> userAfter = getUser(USER_JACK_OID); display("User jack after", userAfter); assertAssignments(userAfter, 2); AssignmentType assignmentTypeAfter = assertAssignedRole(userAfter, ROLE_STRONG_SAILOR_OID); assertEffectiveActivation(assignmentTypeAfter, ActivationStatusType.DISABLED); assertRoleMembershipRef(userAfter, ROLE_PIRATE_OID); assertDelegatedRef(userAfter); assertJackDummyPirateAccount(); // no sailor! }
/** * Just verifying that account presence honors assignment validity (checked as part of MID-4199 evaluation) */ @Test public void test220JackAssignFutureRichSailor() throws Exception { final String TEST_NAME = "test220JackAssignFutureRichSailor"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); unassignAll(TEST_NAME); PrismObject<UserType> userBefore = getUser(USER_JACK_OID); display("User jack before", userBefore); ActivationType activationType = new ActivationType(); activationType.setValidFrom(getTimestamp("P1M")); // WHEN displayWhen(TEST_NAME); assignRole(USER_JACK_OID, ROLE_STRONG_RICH_SAILOR_OID, activationType, task, result); // THEN displayThen(TEST_NAME); assertSuccess(result); PrismObject<UserType> userAfter = getUser(USER_JACK_OID); display("User jack after", userAfter); assertAssignments(userAfter, 1); AssignmentType assignmentTypeAfter = assertAssignedRole(userAfter, ROLE_STRONG_RICH_SAILOR_OID); assertEffectiveActivation(assignmentTypeAfter, ActivationStatusType.DISABLED); assertRoleMembershipRef(userAfter); assertDelegatedRef(userAfter); assertNoDummyAccount(ACCOUNT_JACK_DUMMY_USERNAME); }
activationType.setValidFrom(getTimestamp("P1M"));
/** * MID-4198 */ @Test public void test250JackAssignFocusExistsResource() throws Exception { final String TEST_NAME = "test250JackAssignFocusExistsResource"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); PrismObject<UserType> userBefore = getUser(USER_JACK_OID); display("User jack before", userBefore); ActivationType activation = new ActivationType(); activation.setValidFrom(getTimestamp("PT10M")); AssignmentType assignment = ObjectTypeUtil.createAssignmentTo(resourceDummyFocusExists, prismContext).activation(activation); // WHEN displayWhen(TEST_NAME); ObjectDelta<UserType> delta = prismContext.deltaFor(UserType.class) .item(UserType.F_ASSIGNMENT).add(assignment) .asObjectDeltaCast(USER_JACK_OID); executeChanges(delta, null, task, result); // THEN displayThen(TEST_NAME); assertSuccess(result); PrismObject<UserType> userAfter = getUser(USER_JACK_OID); display("User jack after", userAfter); assertAssignments(userAfter, 1); assertLinks(userAfter, 0); assertNoDummyAccount(RESOURCE_DUMMY_FOCUS_EXISTS_NAME, USER_JACK_USERNAME); }
@Test public void test220UserContainerReplace() throws Exception { final String TEST_NAME = "test220UserContainerReplace"; Task task = createTask(TEST_NAME); AssignmentType ass1 = new AssignmentType(prismContext); ass1.setActivation(new ActivationType(prismContext)); ass1.getActivation().setAdministrativeStatus(ActivationStatusType.DISABLED); ass1.getActivation().setValidFrom(XmlTypeConverter.createXMLGregorianCalendar(2010, 1, 1, 0, 0, 0)); ass1.setTargetRef(createObjectRef(ROLE_SUPERUSER_OID, ROLE)); ActivationType act1 = new ActivationType(prismContext); act1.setAdministrativeStatus(ActivationStatusType.DISABLED); ObjectDelta<?> delta = deltaFor(UserType.class) .item(UserType.F_NAME).replace("admin") .item(UserType.F_ACTIVATION).replace(act1) .item(UserType.F_ASSIGNMENT).replace(ass1) .asObjectDelta(USER_ADMINISTRATOR_OID); /// WHEN displayWhen(TEST_NAME); final Scene scene = visualizer.visualizeDelta((ObjectDelta<? extends ObjectType>) delta, task, task.getResult()); // THEN displayThen(TEST_NAME); display("scene", scene); // TODO some asserts }
drakeValidFrom = clock.currentTimeXMLGregorianCalendar(); drakeValidFrom.add(XmlTypeConverter.createDuration(true, 0, 0, 10, 0, 0, 0)); activationType.setValidFrom(drakeValidFrom); drakeValidTo = clock.currentTimeXMLGregorianCalendar(); drakeValidTo.add(XmlTypeConverter.createDuration(true, 0, 0, 80, 0, 0, 0));
jackSwashbucklerAssignmentActivation.setValidFrom(validFrom);
activationType.setValidFrom(XmlTypeConverter.addDuration(startTs, "PT2H")); activationType.setValidTo(XmlTypeConverter.addDuration(startTs, "P1D"));
activationType.setValidFrom(XmlTypeConverter.addDuration(startTs, "PT2H")); activationType.setValidTo(XmlTypeConverter.addDuration(startTs, "P1D"));