The HighScorePermission Class

The HighScorePermission class defines the permission that ExampleGame needs to update the user's high score.

All permission classes should subclass from either or . The basic difference between the two is that defines more complex permissions that require names and actions. For example, a extends from , and requires a name (a filename), and actions allowed for that file (read/write/delete).

In contrast, defines simpler permissions that only require a name. For example, java.lang.RuntimePermission extends from and simply needs a name (like "exitVM"), which allows programs to exit the Java Virtual Machine.

Our HighScorePermission is a simple permission, and hence can be extended from .

Often, the method implementations in the BasicPermission class itself do not need to be overridden by its subclasses. That is the case with our HighScorePermission , so all we need to implement are the constructors, which just invoke the superclass constructors, as shown in the following:

package com.scoredev.scores;


public final class HighScorePermission extends BasicPermission {

    public HighScorePermission(String name)

    // note that actions is ignored and not used,
    // but this constructor is still needed
    public HighScorePermission(String name, String actions) 
	super(name, actions);