palio.modules.palio
Class MutexMap

java.lang.Object
  extended by palio.modules.palio.MutexMap

public class MutexMap
extends java.lang.Object

Mapa zamków - hashmapa kluczy i odpowiadających im zamków, na których można synchronizować kod.


Constructor Summary
MutexMap()
          Tworzy mapę kluczy, bez nazwy i z wyłączonym logowaniem
MutexMap(java.lang.String name, boolean isLogged)
          Tworzy mapę kluczy, z podaną nazwą i logowaniem
 
Method Summary
 void disposeLock(Mutex mutex)
          Zwalnia zamek otrzymany przy wywołaniu getLock()
 Mutex getLock(java.lang.Object key)
          Zwraca zamek związany z podanym kluczem, na którym należy synchronizować wykonanie kodu związanego z tym kluczem, np:
Mutex mutex = getLock(key);
try {
synchronized (mutex) {
tu kod związany z kluczem key
}
} finally {
disposeLock(mutex);
}
 boolean getLogging()
          Zwraca czy operacje pobierania i zwalniania zamka są logowane.
 java.lang.String getName()
          Zwraca nazwę mapy.
 void setLogging(boolean isLogged)
          Ustawia, czy operacje pobierania i zwalniania zamka są logowane.
 void setName(java.lang.String name)
          Ustawia nazwę mapy.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MutexMap

public MutexMap()
Tworzy mapę kluczy, bez nazwy i z wyłączonym logowaniem


MutexMap

public MutexMap(java.lang.String name,
                boolean isLogged)
Tworzy mapę kluczy, z podaną nazwą i logowaniem

Parameters:
name - nazwa hashmapy kluczy używana przy logowaniu
isLogged - czy operacje mają być logowane
Method Detail

getName

public java.lang.String getName()
Zwraca nazwę mapy.

Returns:
nazwa mapy używana przy logowaniu

setName

public void setName(java.lang.String name)
Ustawia nazwę mapy.

Parameters:
name - nazwa mapy używana przy logowaniu

getLogging

public boolean getLogging()
Zwraca czy operacje pobierania i zwalniania zamka są logowane.

Returns:
czy operacje pobierania i zwalniania zamka są logowane

setLogging

public void setLogging(boolean isLogged)
Ustawia, czy operacje pobierania i zwalniania zamka są logowane.

Parameters:
isLogged - jeśli true, operacje pobierania i zwalniania zamka są logowane.

getLock

public Mutex getLock(java.lang.Object key)
Zwraca zamek związany z podanym kluczem, na którym należy synchronizować wykonanie kodu związanego z tym kluczem, np:
Mutex mutex = getLock(key);
try {
synchronized (mutex) {
tu kod związany z kluczem key
}
} finally {
disposeLock(mutex);
}

Parameters:
key - klucz, z którym ma być związany zamek
Returns:
zamek związany z podanym kluczem

disposeLock

public void disposeLock(Mutex mutex)
Zwalnia zamek otrzymany przy wywołaniu getLock()

Parameters:
mutex - zamek, który ma być zwolniony