Home | History | Annotate | Download | only in osu
      1 package com.android.hotspot2.osu;
      2 
      3 import com.android.hotspot2.omadm.OMAException;
      4 import com.android.hotspot2.omadm.XMLNode;
      5 import com.android.hotspot2.osu.commands.OSUCommandData;
      6 
      7 import java.util.ArrayList;
      8 import java.util.Collection;
      9 import java.util.Collections;
     10 import java.util.List;
     11 
     12 public class PostDevDataResponse extends OSUResponse {
     13     private final List<OSUCommand> mOSUCommands;
     14 
     15     public PostDevDataResponse(XMLNode root) throws OMAException {
     16         super(root, OSUMessageType.PostDevData);
     17 
     18         if (getStatus() == OSUStatus.Error) {
     19             mOSUCommands = null;
     20             return;
     21         }
     22 
     23         mOSUCommands = new ArrayList<>();
     24         for (XMLNode child : root.getChildren()) {
     25             mOSUCommands.add(new OSUCommand(child));
     26         }
     27     }
     28 
     29     public OSUCommandID getOSUCommand() {
     30         return mOSUCommands.size() == 1 ? mOSUCommands.get(0).getOSUCommand() : null;
     31     }
     32 
     33     public ExecCommand getExecCommand() {
     34         return mOSUCommands.size() == 1 ? mOSUCommands.get(0).getExecCommand() : null;
     35     }
     36 
     37     public OSUCommandData getCommandData() {
     38         return mOSUCommands.size() == 1 ? mOSUCommands.get(0).getCommandData() : null;
     39     }
     40 
     41     public Collection<OSUCommand> getCommands() {
     42         return Collections.unmodifiableCollection(mOSUCommands);
     43     }
     44 
     45     @Override
     46     public String toString() {
     47         return super.toString() + ", commands " + mOSUCommands;
     48     }
     49 }
     50