javacommons/gcfprotocols/socket/socket/javasrc/com/nokia/mj/impl/gcf/protocol/socket/SocketPermissionImpl.java
changeset 69 773449708c84
parent 47 f40128debb5d
child 66 2455ef1f5bbc
equal deleted inserted replaced
61:bf7ee68962da 69:773449708c84
    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 SocketPermissionImpl extends PermissionBase
    26 public class SocketPermissionImpl extends PermissionBase
    27 {
    27 {
       
    28     /**
       
    29      * Constants for identifying the target/uri of connection: client or server
       
    30      */
       
    31      static String CLIENT_TARGET = "socket://*";
       
    32      static String SERVER_TARGET = "socket://";
       
    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      *
    34      */
    41      */
    35 
    42 
    36     public SocketPermissionImpl(String uri)
    43     public SocketPermissionImpl(String uri)
    37     {
    44     {
    38         super(uri);
    45         super(uri);
       
    46         iTarget = uri;
    39     }
    47     }
    40 
    48 
    41     public String getSecurityPromptQuestion(int aInteractionMode)
    49     public String getSecurityPromptQuestion(int aInteractionMode)
    42     {
    50     {
    43         // either provide own localized text
    51         // either provide own localized text
    53 
    61 
    54     }
    62     }
    55 
    63 
    56     public String toString()
    64     public String toString()
    57     {
    65     {
       
    66         if (SERVER_TARGET.equals(iTarget))
       
    67         {
       
    68             return "javax.microedition.io.Connector.serversocket";
       
    69         }
    58         return "javax.microedition.io.Connector.socket";
    70         return "javax.microedition.io.Connector.socket";
    59     }
    71     }
    60 
    72 
    61     public boolean implies(Permission p)
    73     public boolean implies(Permission p)
    62     {
    74     {
    63         if (p instanceof SocketPermissionImpl)
    75         if (p instanceof SocketPermissionImpl)
    64         {
    76         {
    65             return true;
    77             SocketPermissionImpl o = (SocketPermissionImpl)p;
       
    78             if ((iTarget != null && iTarget.equals(o.getTarget()))
       
    79                 || (iTarget == null && o.getTarget() == null))
       
    80             {
       
    81                 return true;
       
    82             }
    66         }
    83         }
    67         return false;
    84         return false;
    68     }
    85     }
    69 
    86 
    70     public boolean equals(Object obj)
    87     public boolean equals(Object obj)
    85     public PermissionCollection newPermissionCollection()
   102     public PermissionCollection newPermissionCollection()
    86     {
   103     {
    87         return null;
   104         return null;
    88     }
   105     }
    89 
   106 
       
   107     String getTarget()
       
   108     {
       
   109         return iTarget;
       
   110     }
    90 }
   111 }