public int initialize() { /* var storage = IsolatedStorageFile.GetUserStoreForApplication(); * for (int i = 0; i < 10; i++) * { * storage.DeleteFile("tileStorage" + i); * }*/ initLoops++; numRecords = 0; next[0] = 0; prev[0] = 0; for (int i = 1; i < MAX_TILES + 1; i++) { next[i] = -1; prev[i] = -1; } try { for (int i = 0; i < NUM_RECORDSTORES; i++) { recordstore[i] = RecordStore.openRecordStore("tileStorage" + i, true); numRecords += recordstore[i].getNumRecords(); /* * Logger.log("Num records:" + recordstore[i].getNumRecords()); * Logger.log("Size:" + recordstore[i].getSize()); * Logger.log("Available space:" + recordstore[i].getSizeAvailable()); */ } if (numRecords > 0) { readIndex(); } // else writeIndex(); //dumpIndex(); return(0); } catch (Exception error) { Logger.log("Error in init! " + error.ToString()); if (eraseStorage() != 0) { Logger.log("Error erasing storage!"); return(-1); } if (initLoops == 1) { return(initialize()); } else { return(-1); } } }