Skip to content
Snippets Groups Projects
Select Git revision
  • aa064ce7b20782625b6c652df2a2904e408a82f8
  • main default protected
  • Kelvinrr-patch-5
  • Kelvinrr-patch-4
  • Kelvinrr-patch-3
  • update_release_doc
  • Kelvinrr-patch-2
  • Kelvinrr-patch-1
  • spice_docs
  • ale_testing
  • changelog_docs
  • 1.0.1
  • 1.0.0
13 results

installing-isis-via-anaconda.md

Blame
  • UWSMCutoutJobOwner.java 4.61 KiB
    /*
     *  This was taken from UWSLibrary DefaultJobOwner because that is final class
     *  we need to add only 
     */
    
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Set;
    
    import uws.job.JobList;
    import uws.job.UWSJob;
    import uws.job.user.JobOwner;
    
    
    
    public final class UWSMCutoutJobOwner implements JobOwner {
    
       private AuthPolicy auth;
    
       private final String id;
       private String pseudo;
       private HashMap<String,Object> otherData = null;
    
    
       public UWSMCutoutJobOwner(final AuthPolicy auth){
          this.auth = auth;
          this.id = auth.getUserName();
          this.pseudo = this.id;
       }
    
       public UWSMCutoutJobOwner(final String name){
          this(name, name);
       }
    
       public UWSMCutoutJobOwner(final String id, final String pseudo){
          this.id = id;
          this.pseudo = pseudo;
       }
    
       public String[] getGroups(){ return auth.getUserGroups();}
    
       @Override
       public final String getID(){
          return id;
       }
    
       @Override
       public final String getPseudo(){
          return pseudo;
       }
    
       public final void setPseudo(final String pseudo){
          this.pseudo = pseudo;
       }
    
       /**
        *          * By default: ALL users have the READ permission for ALL jobs lists.
        *                   * @see uws.job.user.JobOwner#hasReadPermission(uws.job.JobList)
        *                            */
       @Override
       public boolean hasReadPermission(JobList jl){
          return true;
       }
    
       /**
        *          * By default: ALL users have the WRITE permission for ALL jobs lists.
        *                   * @see uws.job.user.JobOwner#hasWritePermission(uws.job.JobList)
        *                            */
       @Override
       public boolean hasWritePermission(JobList jl){
          return true;
       }
    
       /**
        *          * By default: ONLY owners of the given job have the READ permission.
        *                   * @see uws.job.user.JobOwner#hasReadPermission(uws.job.UWSJob)
        *                            */
       @Override
       public boolean hasReadPermission(UWSJob job){
          return (job == null) || (job.getOwner() == null) || (job.getOwner().equals(this));
       }
    
       /**
        *          * By default: ONLY owners of the given job have the WRITE permission.
        *                   * @see uws.job.user.JobOwner#hasWritePermission(uws.job.UWSJob)
        *                            */
       @Override
       public boolean hasWritePermission(UWSJob job){
          return (job == null) || (job.getOwner() == null) || (job.getOwner().equals(this));
       }
    
       /**
        *          * By default: ONLY owners of the given job have the EXECUTE permission.
        *                   * @see uws.job.user.JobOwner#hasExecutePermission(uws.job.UWSJob)
        *                            */
       @Override
       public boolean hasExecutePermission(UWSJob job){
          return (job == null) || (job.getOwner() == null) || (job.getOwner().equals(this));
       }
    
       public String putUserData(final String name, final String value){
          if (otherData == null)
             otherData = new HashMap<String,Object>();
          return (String)otherData.put(name, value);
       }
    
       public String getUserData(final String name){
          return (otherData == null) ? null : (String)otherData.get(name);
       }
    
       public String removeUserData(final String name){
          return (otherData == null) ? null : (String)otherData.remove(name);
       }
    
       public Set<String> getAllUserData(){
          return (otherData == null) ? null : otherData.keySet();
       }
    
       @Override
       public Map<String,Object> getDataToSave(){
          return otherData;
       }
    
       @Override
       public void restoreData(Map<String,Object> data){
          if (data == null || data.isEmpty())
             return;
    
          if (otherData == null)
             otherData = new HashMap<String,Object>(data.size());
    
          otherData.putAll(data);
       }
    
       /**
        *          * By default: the user ID.
        *                   * @see java.lang.Object#toString()
        *                            */
       @Override
       public String toString(){
          return id;
       }
    
       /**
        *          * By default: a {@link UWSMCutoutJobOwner} is equal to any {@link JobOwner} only if their ID are equals.
        *                   * @see java.lang.Object#equals(java.lang.Object)
        *                            */
       @Override
       public boolean equals(Object obj){
          if (obj == null || !(obj instanceof JobOwner))
             return false;
    
          String objId = ((JobOwner)obj).getID();
          return (id == null && objId == null) || (id != null && objId != null && id.equals(objId));
       }
    
       /**
        *          * By default: this function returns the hashCode of the ID.
        *                   * @see java.lang.Object#hashCode()
        *                            */
       @Override
       public int hashCode(){
          return id.hashCode();
       }
    
    }