package net.pterodactylus.sone.database.memory;
-import static com.google.common.base.Optional.fromNullable;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.google.common.base.Predicates.not;
import static com.google.common.collect.FluentIterable.from;
import net.pterodactylus.sone.database.PostDatabase;
import net.pterodactylus.sone.database.PostReplyBuilder;
import net.pterodactylus.sone.database.SoneBuilder;
-import net.pterodactylus.sone.database.SoneProvider;
import net.pterodactylus.util.config.Configuration;
import net.pterodactylus.util.config.ConfigurationException;
/** The lock. */
private final ReadWriteLock lock = new ReentrantReadWriteLock();
- /** The Sone provider. */
- private final SoneProvider soneProvider;
-
/** The configuration. */
private final Configuration configuration;
private final ConfigurationLoader configurationLoader;
/**
* Creates a new memory database.
*
- * @param soneProvider
- * The Sone provider
* @param configuration
* The configuration for loading and saving elements
*/
@Inject
- public MemoryDatabase(SoneProvider soneProvider, Configuration configuration) {
- this.soneProvider = soneProvider;
+ public MemoryDatabase(Configuration configuration) {
this.configuration = configuration;
this.configurationLoader = new ConfigurationLoader(configuration);
memoryBookmarkDatabase =
memoryFriendDatabase.removeFriend(localSone.getId(), friendSoneId);
}
+ @Nullable
+ @Override
+ public Long getFollowingTime(@Nonnull String friendSoneId) {
+ return memoryFriendDatabase.getFollowingTime(friendSoneId);
+ }
+
//
// POSTPROVIDER METHODS
//
/** {@inheritDocs} */
@Override
public PostBuilder newPostBuilder() {
- return new MemoryPostBuilder(this, soneProvider);
+ return new MemoryPostBuilder(this, this);
}
//
/** {@inheritDocs} */
@Override
public PostReplyBuilder newPostReplyBuilder() {
- return new MemoryPostReplyBuilder(this, soneProvider);
+ return new MemoryPostReplyBuilder(this, this);
}
//