import java.io.StringWriter;
import java.nio.charset.Charset;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import net.pterodactylus.sone.data.Reply;
import net.pterodactylus.sone.data.Sone;
import net.pterodactylus.sone.freenet.StringBucket;
-import net.pterodactylus.util.filter.Filter;
-import net.pterodactylus.util.filter.Filters;
import net.pterodactylus.util.io.Closer;
import net.pterodactylus.util.logging.Logging;
import net.pterodactylus.util.service.AbstractService;
try {
core.setSoneStatus(sone, SoneStatus.inserting);
FreenetURI finalUri = freenetInterface.insertDirectory(insertInformation.getInsertUri().setKeyType("USK").setSuggestedEdition(0), insertInformation.generateManifestEntries(), "index.html");
- sone.updateUris(finalUri.getEdition());
+ sone.setLatestEdition(finalUri.getEdition());
success = true;
logger.log(Level.INFO, "Inserted Sone “%s” at %s.", new Object[] { sone.getName(), finalUri });
} catch (SoneException se1) {
if (sone.getModificationCounter() == modificationCounter) {
logger.log(Level.FINE, "Sone “%s” was not modified further, resetting counter…", new Object[] { sone });
sone.setModificationCounter(0);
+ core.saveSone(sone);
modificationCounter = 0;
lastModificationTime = 0;
}
} finally {
Closer.close(templateInputStreamReader);
}
- Collection<Sone> knownSones = Filters.filteredCollection(core.getKnownSones(), new Filter<Sone>() {
-
- /**
- * {@inheritDoc}
- */
- @Override
- public boolean filterObject(Sone object) {
- return !object.getId().equals(soneProperties.get("id"));
- }
- });
template.set("currentSone", soneProperties);
- template.set("knownSones", knownSones);
StringWriter writer = new StringWriter();
StringBucket bucket = null;
try {