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