NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Per saperne di piu'

Approvo

Capitolo 51: La classe RecordStore.

 

La classe RecordStore identifica una collezione di Record (non necessariamente tutti uguali in dimensioni) memorizzati in maniera persistente sul dispositivo mobile.

 

I RecordStore vengono identificati mediante una stringa così composta:

  • MIDlet-Vendor;
  • MIDlet-Name;
  • nome del RecordStore.

 

 

Il RecordStore è quindi legato alla MIDlet che lo genera, ma può anche essere 'pubblico', nel senso che l'accesso ai suoi Record può essere effettuato da altre MIDlet, se lo si desidera.

 

Per conoscere i nomi dei RecordStore disponibili è possibile utilizzare il metodo:

  • static listRecordStores()   :   String[];

che restituisce un array di stringhe: ogni stringa denoterà un RecordStore, secondo il formato descritto precedentemente.

 

 

La creazione di un RecordStore avviene mediante i metodi statici messi a disposizione da tale classe:

  • openRecordStore(String recordStoreName, boolean createIfNecessary)   :   RecordStore;
  • openRecordStore(String recordStoreName, boolean createIfNecessary, int authmode, boolean writable)   :   RecordStore;
  • openRecordStore(String recordStoreName, String vendorName, String suiteName)   :   RecordStore;

dove il parametro authmode può assumere i seguenti valori:

AUTHMODE_PRIVATE Accesso privato: solo la MIDlet che crea il RecordStore può accedere ai suoi Record.
AUTHMODE_ANY Accesso libero: altre MIDlet possono accedere a questo RecordStore.

 

In realtà non si dovrebbe parlare di 'creazione' ma di 'apertura' di un RecordStore, come suggeriscono i nomi dei metodi ed il parametro booleano 'createIfNecessary': in effetti, un RecordStore con il nome passato come parametro viene creato solo se non esiste già, ed in tal caso viene restituito il riferimento allo stesso, altrimenti viene restituito il riferimento al RecordStore già esistente con quel nome.

 

Per la chiusura e la cancellazione di un RecordStore abbiamo a disposizione i seguenti metodi:

  • closeRecordStore()   :   void;
  • deleteRecordStore(String recordStoreName)   :   static; .

 

Altri metodi utili messi a disposizione da RecordStore sono, ad esempio, i seguenti:

getName()   :   String Restituisce il nome del RecordStore (stringa formattata come descritto precedentemente).
getVersion()   :   int Restituisce il numero di versione del RecordStore, valore che viene incrementato automaticamente ogni volta che viene effettuata un'operazione sul RecordStore.
getLastModified()   :   long Restituisce la data dell'ultima modifica operata sul RecordStore.
setMode(int authmode, boolean writeable)   :   void Cambia la modalità di accesso al RecordStore. Il parametro 'authomode' è stato descritto precedentemente in questo stesso capitolo.
getNextRecordID()   :   int Ogni Record è memorizzato nel RecordStore con un ID numerico; tale metodo restituisce il valore che verrà assegnato come ID al prossimo Record da memorizzare.
getNumRecords()   :   int Restituisce il numero di Record attualmente presenti nel RecordStore.
getSize()   :   int Restituisce la dimensione in byte del RecordStore (lo spazio occupato in memoria).
getSizeAvailable()   :   int Restituisce la quantità di memoria, misurata in byte, ancora disponibile per il RecordStore.

 

Nel prossimo capitolo prenderemo in esame i metodi di RecordStore atti ad aggiungere, impostare o cancellare i Record e i metodi per "wrappare" le informazioni in array di byte.

 

 
Vai all'inizio della pagina