/* Copyright (C) 2009 Mobile Sorcery AB
This program is free software; you can redistribute it and/or modify it
under the terms of the Eclipse Public License v1.0.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the Eclipse Public License v1.0 for
more details.
You should have received a copy of the Eclipse Public License v1.0 along
with this program. It is also available at http://www.eclipse.org/legal/epl-v10.html
*/
package com.mobilesorcery.sdk.core.security;
import java.util.List;
public interface IApplicationPermissions {
public List<String> getRequestedPermissions(boolean includeChildren);
public void resetRequestedPermissions(List<String> required);
public void setRequestedPermission(String required, boolean set);
public void setRequestedPermissions(List<String> required, boolean set);
/**
* <p>Returns <code>true</code> if the specified permission
* is required.</p>
* @param key
* @return
*/
public boolean isPermissionRequested(String key);
public List<String> getAvailablePermissions(String parentPermission);
public IApplicationPermissions createWorkingCopy();
public void apply(IApplicationPermissions workingCopy);
}