changed API ID order, added xICIC support, added config fields for adm and bearer requests
diff --git a/src/main/java/org.onosproject.xran/codecs/pdu/RXSigMeasConfig.java b/src/main/java/org.onosproject.xran/codecs/pdu/RXSigMeasConfig.java
index c6704ce..f8b5403 100644
--- a/src/main/java/org.onosproject.xran/codecs/pdu/RXSigMeasConfig.java
+++ b/src/main/java/org.onosproject.xran/codecs/pdu/RXSigMeasConfig.java
@@ -8,10 +8,12 @@
 import org.openmuc.jasn1.ber.BerByteArrayOutputStream;
 import org.openmuc.jasn1.ber.BerLength;
 import org.openmuc.jasn1.ber.BerTag;
+import org.openmuc.jasn1.ber.types.string.BerUTF8String;
 
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.Serializable;
+import java.io.UnsupportedEncodingException;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -389,5 +391,37 @@
 		sb.append("}");
 	}
 
+	public static XrancPdu constructPacket(ECGI ecgi, CRNTI crnti, RXSigMeasConfig.MeasCells measCells, int interval) {
+		RXSigRepQty rxSigRepQty = new RXSigRepQty(2);
+		RXSigMeasRepInterval repInterval = new RXSigMeasRepInterval(interval);
+
+		RXSigMeasConfig sigMeasConfig = new RXSigMeasConfig();
+		sigMeasConfig.setCrnti(crnti);
+		sigMeasConfig.setEcgi(ecgi);
+		sigMeasConfig.setReportQty(rxSigRepQty);
+		sigMeasConfig.setMeasCells(measCells);
+		sigMeasConfig.setReportInterval(repInterval);
+
+		XrancPduBody body = new XrancPduBody();
+		body.setRXSigMeasConfig(sigMeasConfig);
+
+		BerUTF8String ver = null;
+		try {
+			ver = new BerUTF8String("3");
+		} catch (UnsupportedEncodingException e) {
+			e.printStackTrace();
+		}
+		XrancApiID apiID = new XrancApiID(15);
+		XrancPduHdr hdr = new XrancPduHdr();
+		hdr.setVer(ver);
+		hdr.setApiId(apiID);
+
+		XrancPdu pdu = new XrancPdu();
+		pdu.setHdr(hdr);
+		pdu.setBody(body);
+
+		return pdu;
+	}
+
 }