Use local Sones when handling locking.
[Sone.git] / src / main / java / net / pterodactylus / sone / database / SoneProvider.java
index f36eaba..fd35d7b 100644 (file)
@@ -20,8 +20,10 @@ package net.pterodactylus.sone.database;
 import java.util.Collection;
 
 import net.pterodactylus.sone.core.Core;
+import net.pterodactylus.sone.data.LocalSone;
 import net.pterodactylus.sone.data.Sone;
 
+import com.google.common.base.Function;
 import com.google.common.base.Optional;
 import com.google.inject.ImplementedBy;
 
@@ -33,6 +35,8 @@ import com.google.inject.ImplementedBy;
 @ImplementedBy(Core.class)
 public interface SoneProvider {
 
+       Function<String, Optional<Sone>> soneLoader();
+
        /**
         * Returns the Sone with the given ID, or {@link Optional#absent()} if it
         * does not exist.
@@ -55,7 +59,7 @@ public interface SoneProvider {
         *
         * @return All local Sones
         */
-       public Collection<Sone> getLocalSones();
+       public Collection<LocalSone> getLocalSones();
 
        /**
         * Returns all remote Sones.