blob: 6e15ae7d27e25d708354e386908be172a95349ed [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2007, 2008 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.equinox.internal.provisional.security.ui;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.ui.IWorkbenchWindow;
/**
* The AuthorizationManager is the facility by which the end user
* is informed of the current state of the system with respect to
* bundle authorization based security.
*/
public abstract class AuthorizationManager {
public AuthorizationManager() {
//no content
}
/**
* Query whether the authorization system is enabled for the system.
*
* @return <code>true</code> if and only if authorization is enabled
*/
abstract public boolean isEnabled();
/**
* Returns true when the system is in need of attention from the end
* user. This means that some unauthorized content has been encountered, and the
* user has not yet inspected the situation.
*
* @return <code>true</code> if user attention is required
*/
abstract public boolean needsAttention();
/**
* Return an Eclipse IStatus object representing the current state of the
* authorization system.
*
* @return IStatus code representing the system status
*/
abstract public IStatus getStatus();
/**
* Open the authorization manager user interface so that the end
* user can view and edit the system's authorization state.
*
* @param workbenchWindow the workbench window
*/
abstract public void displayManager(IWorkbenchWindow workbenchWindow);
}