List of usage examples for com.google.gwt.gears.client Factory hasPermission
public native boolean hasPermission() ;
true if the site already has permission to use Gears. From source file:de.lilawelt.zmachine.client.storage.GearsAdapterReal.java
License:Open Source License
public boolean Initialize() throws StorageException { if (initialized) return true; Factory f = Factory.getInstance(); if (f == null) throw new StorageException("Gears could not be initialized"); if ((!f.hasPermission()) && (!f.getPermission())) throw new StorageException("Sorry, this site may not access your gears installation"); Log.debug("Trying gears init..."); // Create the database if it doesn't exist. try {//from w ww. j ava 2 s . c o m db = f.createDatabase(); db.open("textadventure-saves"); // The 'int' type will store up to 8 byte ints depending on the magnitude of the // value added. db.execute( "create table if not exists saves (savename text, gameuid text, savedate date, savedata blob)"); } catch (GearsException e) { throw new StorageException( "Sorry, an error was encountered while initializing gears: " + e.getMessage()); } Log.debug("Dine with gears init"); initialized = true; return true; }
From source file:org.sigmah.client.offline.sigmah.OnlineMode.java
License:Open Source License
/** * Verify if the usage of Google Gears has been approved by the user.<br> * If the permission hasn't been granted yet, this method will ask for * permission if <code>askForPermission</code> is true.<br> * <br>/*from w w w.j av a 2 s . co m*/ * Also, this method creates the database * @param askForPermission <code>true</code> to ask for permission to use * Google Gears (only if needed), <code>false</code> otherwise. */ private void checkPermission(boolean askForPermission) { final Factory factory = Factory.getInstance(); if (factory != null && !databaseCheckIsDone) { if (!factory.hasPermission() && askForPermission) factory.getPermission("Sigmah", "desktopicons/48x48.png", I18N.CONSTANTS.sigmahOfflineDescription()); if (factory.hasPermission()) { localDatabase = factory.createDatabase(); // Verifying the existence of the "status" table localDatabase.open(LOCAL_DATABASE_NAME); try { localDatabase.execute("SELECT online FROM status WHERE id = 1"); } catch (DatabaseException ex) { // Most likely, the database doesn't exists. // Creating the database createStatusTable(); } finally { try { localDatabase.close(); } catch (DatabaseException ex) { Log.debug("Database closing error.", ex); } } databaseCheckIsDone = true; } } }