home *** CD-ROM | disk | FTP | other *** search
/ Popular Software (Premium Edition) / mycd.iso / INTERNET / NETSCAP4.06 / CP32E406.EXE / nav40.z / java40.jar / netscape / security / ParameterizedTarget.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-08-13  |  2.5 KB  |  90 lines

  1. package netscape.security;
  2.  
  3. import netscape.util.Hashtable;
  4.  
  5. public class ParameterizedTarget extends UserTarget {
  6.    private Hashtable itsPrinToPrivTable = new Hashtable();
  7.  
  8.    public ParameterizedTarget() {
  9.    }
  10.  
  11.    public ParameterizedTarget(String var1, Principal var2, int var3, String var4, String var5, String var6) {
  12.       super(var1, var2, var3, var4, var5, var6);
  13.    }
  14.  
  15.    public ParameterizedTarget(String var1, Principal var2, int var3, String var4, String var5, String var6, String var7) {
  16.       super(var1, var2, var3, var4, var5, var6, var7);
  17.    }
  18.  
  19.    ParameterizedTarget(String var1, Principal var2) {
  20.       super(var1, var2, UserDialogHelper.targetRiskHigh(), "", "", "");
  21.    }
  22.  
  23.    public String getDetailedInfo(Object var1) {
  24.       return var1 == null ? "" : var1.toString();
  25.    }
  26.  
  27.    private void registerPrincipal(Principal var1) {
  28.       Hashtable var2 = this.itsPrinToPrivTable;
  29.       synchronized(var2){}
  30.  
  31.       try {
  32.          if (this.itsPrinToPrivTable.get(var1) == null) {
  33.             this.itsPrinToPrivTable.put(var1, new PrivilegeTable());
  34.             return;
  35.          }
  36.       } catch (Throwable var5) {
  37.          throw var5;
  38.       }
  39.  
  40.    }
  41.  
  42.    void unregisterPrincipal(Principal var1) {
  43.       Hashtable var2 = this.itsPrinToPrivTable;
  44.       synchronized(var2){}
  45.  
  46.       try {
  47.          this.itsPrinToPrivTable.remove(var1);
  48.       } catch (Throwable var4) {
  49.          throw var4;
  50.       }
  51.  
  52.    }
  53.  
  54.    public Privilege enablePrivilege(Principal var1, Object var2) {
  55.       Privilege var3 = super.enablePrivilege(var1, var2);
  56.       if (var2 == null) {
  57.          return var3;
  58.       } else {
  59.          this.registerPrincipal(var1);
  60.          PrivilegeTable var4 = (PrivilegeTable)this.itsPrinToPrivTable.get(var1);
  61.          var4.put(var2, var3);
  62.          return var3;
  63.       }
  64.    }
  65.  
  66.    Privilege getPrincipalPrivilege(Principal var1, Object var2) {
  67.       PrivilegeTable var3 = (PrivilegeTable)this.itsPrinToPrivTable.get(var1);
  68.       return var3 != null && var2 != null ? var3.get(var2) : Privilege.findPrivilege(2, 1);
  69.    }
  70.  
  71.    public Privilege checkPrivilegeEnabled(Principal[] var1, Object var2) {
  72.       boolean var4 = false;
  73.       int var5 = var1.length;
  74.  
  75.       while(var5-- > 0) {
  76.          Privilege var3 = this.getPrincipalPrivilege(var1[var5], var2);
  77.          switch (var3.getPermission()) {
  78.             case 0:
  79.             default:
  80.                return Privilege.findPrivilege(0, 1);
  81.             case 1:
  82.                var4 = true;
  83.             case 2:
  84.          }
  85.       }
  86.  
  87.       return var4 ? Privilege.findPrivilege(1, 1) : Privilege.findPrivilege(0, 1);
  88.    }
  89. }
  90.