@Override public WikittyEvent clear(WikittyTransaction transaction) { wikitties = new LinkedHashMap<String, Wikitty>(); WikittyEvent result = new WikittyEvent(this); result.addType(WikittyEvent.WikittyEventType.CLEAR_WIKITTY); return result; }
/** * Merge this event with event passed in arguement. Merged datas are: * <li> type * <li> wikitties * <li> extensions * <li> removeDate * * @param e */ public void add(WikittyEvent e) { getType().addAll(e.getType()); if (e.getWikitties() != null) { for (Map.Entry<String, Wikitty> i : e.getWikitties().entrySet()) { addWikitty(i.getValue()); } } if (e.getExtensions() != null) { for (Map.Entry<String, WikittyExtension> i : e.getExtensions().entrySet()) { addExtension(i.getValue()); } } if (e.getRemoveDate() != null) { for (Map.Entry<String, Date> i : e.getRemoveDate().entrySet()) { addRemoveDate(i.getKey(), i.getValue()); } } }
@Override public WikittyEvent delete(WikittyTransaction transaction, Collection<String> extNames) { WikittyEvent result = new WikittyEvent(this); Set<String> extToDelete = new HashSet<String>(extNames); for (Iterator<Map.Entry<String, WikittyExtension>> i = extensions.entrySet().iterator(); i.hasNext();) { Map.Entry<String, WikittyExtension> entry = i.next(); String name = WikittyExtension.computeName(entry.getKey()); if (extToDelete.contains(name)) { i.remove(); result.addDeletedExtension(name); } } return result; }
if (e.getType().contains( WikittyEvent.WikittyEventType.CLEAR_WIKITTY) || e.getType().contains( WikittyEvent.WikittyEventType.CLEAR_EXTENSION)) { mustClear = true; if (e.getType().contains(WikittyEvent.WikittyEventType.PUT_WIKITTY)) { for (Wikitty w : e.getWikitties().values()) { toAddWikitty.put(w.getWikittyId(), w); if (e.getType().contains(WikittyEvent.WikittyEventType.REMOVE_WIKITTY)) { for (Map.Entry<String, Date> entry : e.getRemoveDate().entrySet()) { toAddWikitty.remove(entry.getKey()); toRemoveWikitty.put(entry.getKey(), entry.getValue()); if (e.getType().contains(WikittyEvent.WikittyEventType.PUT_EXTENSION)) { for (WikittyExtension ext : e.getExtensions().values()) { toAddExt.add(ext); if (e.getType().contains(WikittyEvent.WikittyEventType.REMOVE_EXTENSION)) { for (String extName : e.getDeletedExtensions()) { toDeleteExt.add(extName); WikittyEvent result = new WikittyEvent(this); if (mustClear) { WikittyEvent eventClear = clear(securityToken); result.add(eventClear); result.add(eventStoreExtension);
@Override public WikittyEvent delete(WikittyTransaction transaction, Collection<String> idList) throws WikittyException { WikittyEvent result = new WikittyEvent(this); Date now = new Date(); for (String id : idList) { Wikitty w = wikitties.get(id); if (w != null && !w.isDeleted()) { w.setDeleteDate(now); result.addRemoveDate(id, now); } } return result; }
if (e.getType().contains( WikittyEvent.WikittyEventType.CLEAR_WIKITTY) || e.getType().contains( WikittyEvent.WikittyEventType.CLEAR_EXTENSION)) { cacheClearWikitty(); cacheClearExtension(); } else { if (e.getType().contains(WikittyEvent.WikittyEventType.PUT_WIKITTY)) { cachePutWikitty(e.getWikitties().values()); if (e.getType().contains(WikittyEvent.WikittyEventType.REMOVE_WIKITTY)) { cacheRemoveWikitty(e.getRemoveDate().keySet()); if (e.getType().contains(WikittyEvent.WikittyEventType.PUT_EXTENSION)) { cachePutExtension(e.getExtensions().values()); if (e.getType().contains(WikittyEvent.WikittyEventType.REMOVE_EXTENSION)) { cacheRemoveExtension(e.getDeletedExtensions());
WikittyEvent event = new WikittyEvent("test"); event.addType(WikittyEvent.WikittyEventType.PUT_WIKITTY); wsn.processRemoteEvent(event); wsn.getEventThread().waitFor(event.getTime()); if (hasListener) { Assert.assertEquals( WikittyEvent event = new WikittyEvent("test"); event.addType(WikittyEvent.WikittyEventType.REMOVE_WIKITTY); wsn.processRemoteEvent(event); wsn.getEventThread().waitFor(event.getTime()); if (hasListener) { Assert.assertEquals( WikittyEvent event = new WikittyEvent("test"); event.addType(WikittyEvent.WikittyEventType.CLEAR_WIKITTY); wsn.processRemoteEvent(event); wsn.getEventThread().waitFor(event.getTime()); if (hasListener) { Assert.assertEquals( WikittyEvent event = new WikittyEvent("test"); event.addType(WikittyEvent.WikittyEventType.PUT_EXTENSION); wsn.processRemoteEvent(event); wsn.getEventThread().waitFor(event.getTime()); if (hasListener) { Assert.assertEquals( WikittyEvent event = new WikittyEvent("test");
@Override public WikittyEvent store(WikittyTransaction transaction, Collection<WikittyExtension> exts) throws WikittyException { WikittyEvent result = new WikittyEvent(this); for (WikittyExtension ext : exts) { // on ajoute que s'il n'y est pas deja if (!extensions.containsKey(ext.getId())) { extensions.put(ext.getId(), ext); result.addExtension(ext); } } return result; }
Connection connection = WikittyJDBCUtil.getConnection(config); try { WikittyEvent result = new WikittyEvent(this); for (Wikitty wikitty : wikitties) { String query = String.format(jdbcQuery.getProperty(QUERY_SELECT_TWO_WHERE), newWikitty.setVersion(newVersion); newWikitty.clearDirty(); result.addWikitty(newWikitty);
getSearchEngine().store(tx, wikitties, force); WikittyEvent result = new WikittyEvent(this); result.add(extUpdate); result.add(wikUpdate);
try { synchronized (allWikittyServiceListeners) { for(WikittyEvent.WikittyEventType type : event.getType()) { allWikittyServiceListeners.fire( type.listenerMethodName, event); if (event.isRemote()) { synchronized (remoteWikittyServiceListeners) { for (WikittyEvent.WikittyEventType type : event.getType()) { remoteWikittyServiceListeners.fire( type.listenerMethodName, event); for (WikittyEvent.WikittyEventType type : event.getType()) { localWikittyServiceListeners.fire( type.listenerMethodName, event); lastEventTime = event.getTime(); waiter.headMap(event.getTime()); for (Iterator<Map.Entry<Long, Object>> i = subwaiter.entrySet().iterator(); i.hasNext();) { Object mutex = i.next().getValue(); while (time.equals(event.getTime())) {
public void addDeletedExtension(String id) { if (deletedExtensions == null) { deletedExtensions = new LinkedHashSet<String>(); addType(WikittyEventType.REMOVE_EXTENSION); } deletedExtensions.add(id); }
public Wikitty store(Wikitty w) { long start = TimeLog.getTime(); WikittyEvent resp = wikittyService.store(securityToken, w); // update object resp.update(w); timeLog.log(start, "store"); return w; }
@Override public WikittyEvent delete(WikittyTransaction transaction, Collection<String> ids) throws WikittyException { Connection connection = WikittyJDBCUtil.getConnection(config); try { WikittyEvent result = new WikittyEvent(this); Date now = new Date(); for (String id : ids) { if (exists(transaction, id) && !isDeleted(transaction, id)) { // addVersionUpdate delete date field WikittyJDBCUtil.doQuery(connection, jdbcQuery.getProperty( QUERY_DELETE_WIKITTY_ADMIN), id); result.addRemoveDate(id, now); } } return result; } catch (SQLException eee) { throw new WikittyException("Can't delete wikitty", eee); } finally { WikittyJDBCUtil.closeQuietly(connection); } }
if (e.getType().contains( WikittyEvent.WikittyEventType.CLEAR_WIKITTY) || e.getType().contains( WikittyEvent.WikittyEventType.CLEAR_EXTENSION)) { if (isAppAdmin(securityToken, userId)) { if (e.getType().contains(WikittyEvent.WikittyEventType.PUT_WIKITTY)) { checkStore(securityToken, e.getWikitties().values()); if (e.getType().contains(WikittyEvent.WikittyEventType.REMOVE_WIKITTY)) { checkDelete(securityToken, e.getRemoveDate().keySet()); if (e.getType().contains(WikittyEvent.WikittyEventType.PUT_EXTENSION)) { checkStoreExtension(securityToken, e.getExtensions().values()); if (e.getType().contains(WikittyEvent.WikittyEventType.REMOVE_EXTENSION)) { checkDeleteExtension(securityToken, e.getDeletedExtensions());
Collection<WikittyExtension> extensions) throws WikittyException { WikittyEvent result = new WikittyEvent(this); Connection connection = WikittyJDBCUtil.getConnection(config); try { result.addExtension(ext); WikittyJDBCUtil.doQuery(connection, jdbcQuery.getProperty(QUERY_INSERT_EXTENSION_ADMIN),
@Override public WikittyEvent store(WikittyTransaction transaction, Collection<Wikitty> wikitties, boolean force) { WikittyEvent result = new WikittyEvent(this); for (Wikitty wikitty : wikitties) { throw new WikittyException("Can't clone ?", eee); result.addWikitty(wikitty);
WikittyEvent eventExt = getExtensionStorage().clear(tx); WikittyEvent result = new WikittyEvent(this); result.add(eventWik); result.add(eventExt);
public void addRemoveDate(String wikittyId, Date date) { if (removeDate == null) { removeDate = new HashMap<String, Date>(); addType(WikittyEventType.REMOVE_WIKITTY); } removeDate.put(wikittyId, date); }