Download the JDK
Search the Tutorials
Hide the TOC
Trail: Security Features in Java SE
Lesson: Implementing Your Own Permission
Implementing Your Own Permission
TerrysGame
The HighScore Class
The HighScorePermission Class
A Sample Policy File
Putting It All Together
Steps for the HighScore Developer (Chris)
Steps for the TerrysGame Developer (Terry)
Steps for a User Running TerrysGame (Kim)
Home Page > Security Features in Java SE > Implementing Your Own Permission
TerrysGame

> Below is the source code for `TerrysGame`. For simplicity, `TerrysGame` does not actually contain code to play a game. It simply retrieves or updates a user's high score.

> To see what the user's current high score value is, you could run:

> >     java TerrysGame get

> To set a new high score value for the user, you could run:

> >     java TerrysGame set score

> To retrieve the user's current high score, `TerrysGame` simply instantiates a `HighScore` object and makes a call to its `getHighScore` method. To set a new high score for the user, `TerrysGame` instantiates a `HighScore` object and calls `setHighScore`, passing it the user's new high score.

> Here is the source code for `TerrysGame`, `TerrysGame.java`:

> >     package com.gamedev.games;

> >     import java.io.*;
> >     import java.security.*;
> >     import java.util.Hashtable;
> >     import com.scoredev.scores.*;

> >     public class TerrysGame
> >     {
> >         public static void main(String args[])
> >     	throws Exception
> >         {
> >     	HighScore hs = new HighScore("TerrysGame");

> >     	if (args.length == 0)
> >     	    usage();

> >     	if (args[0].equals("set")) {
> >     	    hs.setHighScore(Integer.parseInt(args[1]));
> >     	} else if (args[0].equals("get")) {
> >     	    System.out.println("score = "+ hs.getHighScore());
> >     	} else {
> >     	    usage();
> >     	}
> >         }

> >         public static void usage()
> >         {
> >     	System.out.println("TerrysGame get");
> >     	System.out.println("TerrysGame set <score>");
> >     	System.exit(1);
> >         }
> >     }

Previous page: Implementing Your Own Permission
Next page: The HighScore Class