DummyResource() { allObjects = Collections.synchronizedMap(new LinkedHashMap<String,DummyObject>()); accounts = Collections.synchronizedMap(new LinkedHashMap<String, DummyAccount>()); groups = Collections.synchronizedMap(new LinkedHashMap<String, DummyGroup>()); privileges = Collections.synchronizedMap(new LinkedHashMap<String, DummyPrivilege>()); orgs = Collections.synchronizedMap(new LinkedHashMap<String, DummyOrg>()); scriptHistory = new ArrayList<>(); accountObjectClass = new DummyObjectClass(); groupObjectClass = new DummyObjectClass(); privilegeObjectClass = new DummyObjectClass(); syncStyle = DummySyncStyle.NONE; deltas = Collections.synchronizedList(new ArrayList<DummyDelta>()); latestSyncToken = 0; }
/** * Clears everything, just like the resouce was just created. */ public void reset() { allObjects.clear(); accounts.clear(); groups.clear(); privileges.clear(); orgs.clear(); scriptHistory.clear(); accountObjectClass = new DummyObjectClass(); groupObjectClass = new DummyObjectClass(); privilegeObjectClass = new DummyObjectClass(); syncStyle = DummySyncStyle.NONE; deltas.clear(); latestSyncToken = 0; writeOperationCount = 0; operationDelayOffset = 0; operationDelayRange = 0; resetBreakMode(); }
/** * Extend dummy schema to have an auxiliary OC. */ public void extendSchemaPosix() throws ConnectException, FileNotFoundException, SchemaViolationException { DummyObjectClass posixAccount = new DummyObjectClass(); addAttrDef(posixAccount, DUMMY_ACCOUNT_ATTRIBUTE_POSIX_UID_NUMBER, Integer.class, false, false); // uid and gid are temporarily not required addAttrDef(posixAccount, DUMMY_ACCOUNT_ATTRIBUTE_POSIX_GID_NUMBER, Integer.class, false, false); dummyResource.addAuxiliaryObjectClass(DUMMY_POSIX_ACCOUNT_OBJECT_CLASS_NAME, posixAccount); isExtendedSchema = true; }