1
0
mirror of https://github.com/essentials/Essentials.git synced 2025-08-22 14:23:09 +02:00
This commit is contained in:
snowleo
2012-10-06 16:55:17 +02:00
parent fabd88dc25
commit 8ccc16822f
2 changed files with 1 additions and 58 deletions

View File

@@ -4,7 +4,6 @@ import java.io.File;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.IOException; import java.io.IOException;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.locks.ReentrantReadWriteLock;
import java.util.logging.Level; import java.util.logging.Level;
import net.ess3.api.IEssentials; import net.ess3.api.IEssentials;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
@@ -13,7 +12,6 @@ import org.bukkit.Bukkit;
public abstract class AsyncStorageObjectHolder<T extends StorageObject> implements IStorageObjectHolder<T> public abstract class AsyncStorageObjectHolder<T extends StorageObject> implements IStorageObjectHolder<T>
{ {
private transient T data; private transient T data;
//private final transient ReentrantReadWriteLock rwl = new ReentrantReadWriteLock();
private final transient Class<T> clazz; private final transient Class<T> clazz;
protected final transient IEssentials ess; protected final transient IEssentials ess;
private final transient StorageObjectDataWriter writer; private final transient StorageObjectDataWriter writer;
@@ -52,51 +50,12 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
return data; return data;
} }
/*@Override
public void acquireReadLock()
{
rwl.readLock().lock();
}
@Override
public void acquireWriteLock()
{
while (rwl.getReadHoldCount() > 0)
{
rwl.readLock().unlock();
}
rwl.writeLock().lock();
rwl.readLock().lock();
}*/
/*@Override
public void close()
{
unlock();
}
@Override
public void unlock()
{
if (rwl.isWriteLockedByCurrentThread())
{
rwl.writeLock().unlock();
writer.schedule();
}
while (rwl.getReadHoldCount() > 0)
{
rwl.readLock().unlock();
}
}*/
@Override @Override
public void queueSave() public void queueSave()
{ {
writer.schedule(); writer.schedule();
} }
@Override @Override
public void onReload() public void onReload()
{ {
@@ -131,14 +90,12 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
@Override @Override
public StorageObject getObject() public StorageObject getObject()
{ {
//acquireReadLock();
return getData(); return getData();
} }
@Override @Override
public void onFinish() public void onFinish()
{ {
//unlock();
finishWrite(); finishWrite();
} }
} }
@@ -154,13 +111,7 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
@Override @Override
public File onStart() throws IOException public File onStart() throws IOException
{ {
final File file = getStorageFile(); return getStorageFile();
/*while (rwl.getReadHoldCount() > 0)
{
rwl.readLock().unlock();
}
rwl.writeLock().lock();*/
return file;
} }
@Override @Override
@@ -170,7 +121,6 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
{ {
data = object; data = object;
} }
//rwl.writeLock().unlock();
loaded.set(true); loaded.set(true);
} }
@@ -188,7 +138,6 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
Bukkit.getLogger().log(Level.SEVERE, ex.getMessage(), ex); Bukkit.getLogger().log(Level.SEVERE, ex.getMessage(), ex);
} }
} }
//rwl.writeLock().unlock();
loaded.set(true); loaded.set(true);
if (exception instanceof FileNotFoundException) if (exception instanceof FileNotFoundException)
{ {

View File

@@ -7,11 +7,5 @@ public interface IStorageObjectHolder<T extends StorageObject> extends IReload
{ {
T getData(); T getData();
//void acquireReadLock();
//void acquireWriteLock();
void queueSave(); void queueSave();
//void unlock();
} }