package com.owera.xaps.tr069.xml; import com.owera.xaps.tr069.Namespace; public class Header { public static final String TRANSACTION_ID_TAG = "ID"; public static final String HOLD_REQUESTS_TAG = "HoldRequests"; private HoldRequests holdRequests; private TR069TransactionID id; private NoMoreRequests noMoreRequests; public Header() { this.id = null; this.holdRequests = null; this.noMoreRequests = null; } public Header(TR069TransactionID id, HoldRequests hr, NoMoreRequests nmr) { this.id = id; this.holdRequests = hr; this.noMoreRequests = nmr; } public Header getHeader() { return this; } public void setHeaderField(String key, String value) { if (key.equals("ID")) { if (id != null) id.setId(value); else this.id = new TR069TransactionID(value); } else if (key.equals("NoMoreRequests")) { if (noMoreRequests != null) noMoreRequests.setNoMoreRequestsFlag(value); else this.noMoreRequests = new NoMoreRequests(value); } else if (key.equals("HoldRequests")) { if (holdRequests != null) holdRequests.setHoldRequestsFlag(value); else this.holdRequests = new HoldRequests(value); } } public String toXml() { StringBuilder sb = new StringBuilder(6); if (id != null || holdRequests != null) { sb.append("<" + Namespace.getSoapEnvNS() + ":Header>\n"); if (id != null) sb.append(id.toXml()); if (holdRequests != null) sb.append(holdRequests.toXml()); if (noMoreRequests != null) sb.append(noMoreRequests.toXml()); sb.append("</" + Namespace.getSoapEnvNS() + ":Header>\n"); } else { sb.append("<" + Namespace.getSoapEnvNS() + ":Header/>\n"); } return sb.toString(); } public TR069TransactionID getId() { return id; } public HoldRequests getHoldRequests() { return holdRequests; } public NoMoreRequests getNoMoreRequests() { return noMoreRequests; } }