| package com.android.server.wifi.hotspot2.omadm; |
| |
| import java.util.Arrays; |
| import java.util.Collection; |
| import java.util.Map; |
| |
| public class RequestDetail { |
| private final String mSppversion; |
| private final String mRedirectURI; |
| private final String mRequestReason; |
| private final String mSessionID; |
| private final String[] mSupportedVersions; |
| private final String[] mSupportedMOs; |
| private final Collection<MOTree> m_MOs; |
| |
| public enum RequestFields { |
| SPPVersion, |
| RedirectURI, |
| RequestReason, |
| SessionID, |
| SupportedVersions, |
| SupportedMOs |
| } |
| |
| public RequestDetail(Map<RequestFields, String> values, Collection<MOTree> mos) { |
| mSppversion = values.get(RequestFields.SPPVersion); |
| mRedirectURI = values.get(RequestFields.RedirectURI); |
| mRequestReason = values.get(RequestFields.RequestReason); |
| mSessionID = values.get(RequestFields.SessionID); |
| mSupportedVersions = split(values.get(RequestFields.SupportedVersions)); |
| mSupportedMOs = split(values.get(RequestFields.SupportedMOs)); |
| m_MOs = mos; |
| } |
| |
| public Collection<MOTree> getMOs() { |
| return m_MOs; |
| } |
| |
| private static String[] split(String list) { |
| return list != null ? list.split("[ \n\r]+") : null; |
| } |
| |
| @Override |
| public String toString() { |
| StringBuilder sb = new StringBuilder(); |
| |
| sb.append("SPPVersion").append(" = '").append(mSppversion).append("'\n"); |
| sb.append("RedirectURI").append(" = '").append(mRedirectURI).append("'\n"); |
| sb.append("RequestReason").append(" = '").append(mRequestReason).append("'\n"); |
| sb.append("SessionID").append(" = '").append(mSessionID).append("'\n"); |
| sb.append("SupportedVersions").append(" = ").append(Arrays.toString(mSupportedVersions)) |
| .append('\n'); |
| sb.append("SupportedMOs").append(" = ").append(Arrays.toString(mSupportedMOs)).append('\n'); |
| sb.append("MOs:\n"); |
| for (MOTree mo : m_MOs) |
| sb.append(mo); |
| |
| return sb.toString(); |
| } |
| } |