@Override public void receive(Transaction t, Subnet subnet, Frame frame) { StandardPayload payload = TransactionListenerUtility.getPayload(frame); int propertyNum = TransactionListenerUtility.getPropertyNum(payload); for (int propertyIndex = 0; propertyIndex < propertyNum; propertyIndex++) { Property property = payload.getFirstPropertyAt(propertyIndex); EPC epc = property.getEPC(); ArrayList<EPC> data = TransactionListenerUtility.explodeEdtToEpcList(property.getEDT()); if (epc == OBSERVABLE_EPC) { epcCache.Observable = data; } else if (epc == SETABLE_EPC) { epcCache.Setable = data; } else if (epc == GETABLE_EPC) { epcCache.Getable = data; } epcCache.AllEPC.addAll(data); } transaction.finish(); }