diff options
Diffstat (limited to 'src/com/android/browser/GearsPermissions.java')
-rw-r--r-- | src/com/android/browser/GearsPermissions.java | 196 |
1 files changed, 0 insertions, 196 deletions
diff --git a/src/com/android/browser/GearsPermissions.java b/src/com/android/browser/GearsPermissions.java deleted file mode 100644 index e48e045d..00000000 --- a/src/com/android/browser/GearsPermissions.java +++ /dev/null @@ -1,196 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.browser; - -import android.util.Log; - -import java.util.HashMap; -import java.util.Iterator; - -/** - * The permission mechanism works the following way: - * - * PermissionType allows to define a type of permission - * (e.g. localStorage/locationData), storing a name and a set of - * resource ids corresponding to the GUI resources. - * - * Permission defines an actual permission instance, with a type and a value. - * - * OriginPermissions holds an origin with a set of Permission objects - */ -class GearsPermissions { - - private static final String TAG = "GearsPermissions"; - - /** - * Defines a type of permission - * - * Store the permission's name (used in the json result) - * Graphically, each permission is a label followed by two radio buttons. - * We store the resources ids here. - */ - public static class PermissionType { - public static final int PERMISSION_NOT_SET = 0; - public static final int PERMISSION_ALLOWED = 1; - public static final int PERMISSION_DENIED = 2; - - String mName; - int mTitleRsc; - int mSubtitleOnRsc; - int mSubtitleOffRsc; - - PermissionType(String name) { - mName = name; - } - - public void setResources(int titleRsc, - int subtitleOnRsc, int subtitleOffRsc) { - mTitleRsc = titleRsc; - mSubtitleOnRsc = subtitleOnRsc; - mSubtitleOffRsc = subtitleOffRsc; - } - - public String getName() { - return mName; - } - - public int getTitleRsc() { - return mTitleRsc; - } - - public int getSubtitleOnRsc() { - return mSubtitleOnRsc; - } - - public int getSubtitleOffRsc() { - return mSubtitleOffRsc; - } - - } - - /** - * Simple class to store an instance of a permission - * - * i.e. a permission type and a value - * Value can be either PERMISSION_NOT_SET, - * PERMISSION_ALLOWED or PERMISSION_DENIED - * (defined in PermissionType). - */ - public static class Permission { - PermissionType mType; - int mValue; - - Permission(PermissionType type, int value) { - mType = type; - mValue = value; - } - - Permission(PermissionType type) { - mType = type; - mValue = 0; - } - - public PermissionType getType() { - return mType; - } - - public void setValue(int value) { - mValue = value; - } - - public int getValue() { - return mValue; - } - } - - /** - * Interface used by the GearsNativeDialog implementation - * to listen to changes in the permissions. - */ - public interface PermissionsChangesListener { - public boolean setPermission(PermissionType type, int perm); - } - - /** - * Holds the model for an origin -- each origin has a set of - * permissions. - */ - public static class OriginPermissions { - HashMap<PermissionType, Permission> mPermissions; - String mOrigin; - public static PermissionsChangesListener mListener; - - public static void setListener(PermissionsChangesListener listener) { - mListener = listener; - } - - OriginPermissions(String anOrigin) { - mOrigin = anOrigin; - mPermissions = new HashMap<PermissionType, Permission>(); - } - - OriginPermissions(OriginPermissions perms) { - mOrigin = perms.getOrigin(); - mPermissions = new HashMap<PermissionType, Permission>(); - HashMap<PermissionType, Permission> permissions = perms.getPermissions(); - Iterator<PermissionType> iterator = permissions.keySet().iterator(); - while (iterator.hasNext()) { - Permission permission = permissions.get(iterator.next()); - int value = permission.getValue(); - setPermission(permission.getType(), value); - } - } - - public String getOrigin() { - return mOrigin; - } - - public HashMap<PermissionType, Permission> getPermissions() { - return mPermissions; - } - - public int getPermission(PermissionType type) { - return mPermissions.get(type).getValue(); - } - - public void setPermission(PermissionType type, int perm) { - if (mPermissions.get(type) == null) { - Permission permission = new Permission(type, perm); - mPermissions.put(type, permission); - return; - } - - if (mListener != null) { - mListener.setPermission(type, perm); - } - - mPermissions.get(type).setValue(perm); - } - - public void print() { - Log.v(TAG, "Permissions for " + mOrigin); - Iterator<PermissionType> iterator = mPermissions.keySet().iterator(); - while (iterator.hasNext()) { - Permission permission = mPermissions.get(iterator.next()); - String name = permission.getType().getName(); - int value = permission.getValue(); - Log.v(TAG, " " + name + ": " + value); - } - } - } - -} |