org.eclipse.equinox.log.LogPermission Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.eclipse.equinox.supplement Show documentation
Show all versions of org.eclipse.equinox.supplement Show documentation
Supplemental Equinox Functionality
/*******************************************************************************
* Copyright (c) 2009, 2011 IBM Corporation and others
* All rights reserved. This program and the accompanying materials are made
* available under the terms of the Eclipse Public License v1.0 which
* accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
******************************************************************************/
package org.eclipse.equinox.log;
import java.security.Permission;
import java.security.PermissionCollection;
/**
* Indicates a bundle's authority to log on behalf of other bundles.
*
* This permission has only a single action: LOG.
*
* @ThreadSafe
* @since 3.7
*/
public class LogPermission extends Permission {
private static final long serialVersionUID = -441193976837153362L;
private static final String ALL = "*"; //$NON-NLS-1$
/**
* The action string log
.
*/
public static final String LOG = "log"; //$NON-NLS-1$
/**
* Create a new LogPermission.
*
* @param name Name must be "*".
* @param actions log
or "*".
*/
public LogPermission(String name, String actions) {
super(name);
if (!name.equals(ALL))
throw new IllegalArgumentException("name must be *"); //$NON-NLS-1$
actions = actions.trim();
if (!actions.equalsIgnoreCase(LOG) && !actions.equals(ALL))
throw new IllegalArgumentException("actions must be * or log"); //$NON-NLS-1$
}
public boolean equals(Object obj) {
return obj instanceof LogPermission;
}
public String getActions() {
return LOG;
}
public int hashCode() {
return LogPermission.class.hashCode();
}
public boolean implies(Permission permission) {
return permission instanceof LogPermission;
}
public PermissionCollection newPermissionCollection() {
return new LogPermissionCollection();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy