import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import net.pterodactylus.sone.core.Core;
+import net.pterodactylus.sone.core.PostProvider;
+import net.pterodactylus.sone.core.SoneProvider;
import net.pterodactylus.sone.data.Post;
import net.pterodactylus.sone.data.Sone;
import net.pterodactylus.util.logging.Logging;
}
- /** The core. */
- private final Core core;
+ /** The Sone provider. */
+ private final SoneProvider soneProvider;
+
+ /** The post provider. */
+ private final PostProvider postProvider;
/**
* Creates a new freenet link parser.
*
- * @param core
- * The core
+ * @param soneProvider
+ * The Sone provider
+ * @param postProvider
+ * The post provider
*/
- public SoneTextParser(Core core) {
- this.core = core;
+ public SoneTextParser(SoneProvider soneProvider, PostProvider postProvider) {
+ this.soneProvider = soneProvider;
+ this.postProvider = postProvider;
}
//
}
if (line.length() >= (next + 7 + 43)) {
String soneId = line.substring(next + 7, next + 50);
- Sone sone = core.getSone(soneId, false);
+ Sone sone = soneProvider.getSone(soneId, false);
if (sone != null) {
parts.add(new SonePart(sone));
} else {
}
if (line.length() >= (next + 7 + 36)) {
String postId = line.substring(next + 7, next + 43);
- Post post = core.getPost(postId, false);
+ Post post = postProvider.getPost(postId, false);
if ((post != null) && (post.getSone() != null)) {
String postText = post.getText();
postText = postText.substring(0, Math.min(postText.length(), 20)) + "…";
public WebInterface(SonePlugin sonePlugin) {
this.sonePlugin = sonePlugin;
formPassword = sonePlugin.pluginRespirator().getToadletContainer().getFormPassword();
- soneTextParser = new SoneTextParser(getCore());
+ soneTextParser = new SoneTextParser(getCore(), getCore());
templateContextFactory = new TemplateContextFactory();
templateContextFactory.addAccessor(Object.class, new ReflectionAccessor());