All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.tv.service.selection.ServiceContextPermission Maven / Gradle / Ivy

/*
 * @(#)ServiceContextPermission.java	1.23 00/10/09
 *
 * Copyright 1998-2000 by Sun Microsystems, Inc.,
 * 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
 * All rights reserved.
 * 
 * This software is the confidential and proprietary information
 * of Sun Microsystems, Inc. ("Confidential Information").  You
 * shall not disclose such Confidential Information and shall use
 * it only in accordance with the terms of the license agreement
 * you entered into with Sun.
 */

package javax.tv.service.selection;

import java.security.Permission;
import java.security.BasicPermission;
import javax.tv.locator.Locator;
import java.io.Serializable;

/**
 * ServiceContextPermission represents permission to
 * control a ServiceContext.  A
 * ServiceContextPermission contains a name (also
 * referred to as a "target name") and an actions string.
 *
 * 

The target name is the name of the service context permission * (see the table below). Each permission identifies a method. A * wildcard match is signified by an asterisk, i.e., "*". * *

The actions string is either "own" or * "*". From a security standpoint, a caller is said to "own" a * ServiceContext instance if it was acquired through * {@link ServiceContextFactory#createServiceContext} or {@link * ServiceContextFactory#getServiceContext}. The string "own" means * the permission applies to your own service contexts; the string "*" * implies permission to these, plus permission for service contexts * obtained from all other sources. * *

The following table lists all the possible * ServiceContextPermission target names, and describes * what the permission allows for each.

* *

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Permission Target NameWhat the Permission Allows
accessAccess to a ServiceContext, via ServiceContextFactory.getServiceContexts()
createCreation of a ServiceContext.
destroyDestruction of a ServiceContext.
getServiceContentHandlersObtaining the service content handlers from a ServiceContext.
stopStopping a ServiceContext.
* *

* The permission ServiceContextPermission("access", "*") is intended * to be granted only to special monitoring applications and not to * general broadcast applications.

* * Note that undefined target and actions strings may be provided to * the constructors of this class, but subsequent calls to * SecurityManager.checkPermission() with the resulting * SelectPermission object will fail. * * @see java.security.BasicPermission * @see java.security.Permission * @see ServiceContext * @see ServiceContextFactory * * @version 1.23, 10/09/00 * @author Bill Foote */ public final class ServiceContextPermission extends BasicPermission { /** * Creates a new ServiceContextPermission object with the specified * name. The name is the symbolic name of the permission, such as * "create". An asterisk may be used to signify a wildcard match. * * @param name The name of the ServiceContextPermission * * @param actions The actions string, as * detailed in the class description. */ public ServiceContextPermission(String name, String actions) { super(null); } /** * Checks if the specified permission is "implied" by this object.

* * More specifically, this method returns true if:

*

    *
  • p is an instance of ServiceContextPermission, and *
  • p's action string matches this object's, or this object has * "*" as an action string, and *
  • p's locator's external form matches this object's locator * string, or this object's locator string is "*". *
* * @param p The permission against which to test. * * @return true if the specified permission is equal * to or implied by this permission; false otherwise. * */ public boolean implies(Permission p) { return false; } /** * Tests two ServiceContextPermission objects for * equality. Returns true if and only if * obj's class is the same as the class of this * object, and obj has the same name and actions * string as this object. * * @param obj The object to test for equality. * * @return true if the two permissions are equal; * false otherwise. */ public boolean equals(Object obj) { return false; } /** * Provides the hash code value of this object. Two * ServiceContextPermission objects that are equal will * return the same hash code. * * @return The hash code value of this object. */ public int hashCode() { return 0; } /** * Returns the canonical representation of the actions string. * * @return The actions string of this permission. */ public String getActions() { return null; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy