javaextensions/datagram/datagram/javasrc/com/nokia/mj/impl/gcf/protocol/datagram/DatagramPermissionImpl.java
branchRCL_3
changeset 27 d5e927d5853b
parent 26 2455ef1f5bbc
equal deleted inserted replaced
26:2455ef1f5bbc 27:d5e927d5853b
    23 import java.security.PermissionCollection;
    23 import java.security.PermissionCollection;
    24 import com.nokia.mj.impl.security.utils.SecurityPromptMessage;
    24 import com.nokia.mj.impl.security.utils.SecurityPromptMessage;
    25 
    25 
    26 public class DatagramPermissionImpl extends PermissionBase
    26 public class DatagramPermissionImpl extends PermissionBase
    27 {
    27 {
       
    28     /**
       
    29      * Constants for identifying the target/uri of connection: client or server
       
    30      */
       
    31      public static String CLIENT_TARGET = "datagram://*";
       
    32      public static String SERVER_TARGET = "datagram://";
       
    33 
       
    34      private String iTarget;
    28 
    35 
    29     /**
    36     /**
    30      * Returns the question (as localized text) associated with the security
    37      * Returns the question (as localized text) associated with the security
    31      * prompt
    38      * prompt
    32      *
    39      *
    35 
    42 
    36 
    43 
    37     public DatagramPermissionImpl(String uri)
    44     public DatagramPermissionImpl(String uri)
    38     {
    45     {
    39         super(uri);
    46         super(uri);
       
    47         iTarget = uri;
    40     }
    48     }
    41 
    49 
    42     public String getSecurityPromptQuestion(int aInteractionMode)
    50     public String getSecurityPromptQuestion(int aInteractionMode)
    43     {
    51     {
    44         // either provide own localized text
    52         // either provide own localized text
    54 
    62 
    55     }
    63     }
    56 
    64 
    57     public String toString()
    65     public String toString()
    58     {
    66     {
       
    67         if (SERVER_TARGET.equals(iTarget))
       
    68         {
       
    69             return "javax.microedition.io.Connector.datagramreceiver";
       
    70         }
    59         return "javax.microedition.io.Connector.datagram";
    71         return "javax.microedition.io.Connector.datagram";
    60     }
    72     }
    61 
    73 
    62     public boolean implies(Permission p)
    74     public boolean implies(Permission p)
    63     {
    75     {
    64         if (p instanceof DatagramPermissionImpl)
    76         if (p instanceof DatagramPermissionImpl)
    65         {
    77         {
    66             return true;
    78             DatagramPermissionImpl o = (DatagramPermissionImpl)p;
       
    79             if ((iTarget != null && iTarget.equals(o.getTarget()))
       
    80                 || (iTarget == null && o.getTarget() == null))
       
    81             {
       
    82                 return true;
       
    83             }
    67         }
    84         }
    68         return false;
    85         return false;
    69     }
    86     }
    70 
    87 
    71     public boolean equals(Object obj)
    88     public boolean equals(Object obj)
    86     public PermissionCollection newPermissionCollection()
   103     public PermissionCollection newPermissionCollection()
    87     {
   104     {
    88         return null;
   105         return null;
    89     }
   106     }
    90 
   107 
       
   108     String getTarget()
       
   109     {
       
   110         return iTarget;
       
   111     }
    91 }
   112 }