From b3ccf839aa077935e3ce1f0b171eb5f39e20f786 Mon Sep 17 00:00:00 2001 From: Janus Varmarken Date: Tue, 17 Jul 2018 18:53:30 -0700 Subject: [PATCH] Move PcapProcessingPipeline to different package. --- .../{ => analysis}/PcapProcessingPipeline.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) rename Code/Projects/SmartPlugDetector/src/main/java/edu/uci/iotproject/{ => analysis}/PcapProcessingPipeline.java (59%) diff --git a/Code/Projects/SmartPlugDetector/src/main/java/edu/uci/iotproject/PcapProcessingPipeline.java b/Code/Projects/SmartPlugDetector/src/main/java/edu/uci/iotproject/analysis/PcapProcessingPipeline.java similarity index 59% rename from Code/Projects/SmartPlugDetector/src/main/java/edu/uci/iotproject/PcapProcessingPipeline.java rename to Code/Projects/SmartPlugDetector/src/main/java/edu/uci/iotproject/analysis/PcapProcessingPipeline.java index 5b3830c..9746102 100644 --- a/Code/Projects/SmartPlugDetector/src/main/java/edu/uci/iotproject/PcapProcessingPipeline.java +++ b/Code/Projects/SmartPlugDetector/src/main/java/edu/uci/iotproject/analysis/PcapProcessingPipeline.java @@ -1,5 +1,7 @@ -package edu.uci.iotproject; +package edu.uci.iotproject.analysis; +import edu.uci.iotproject.PcapPacketConsumer; +import edu.uci.iotproject.PcapReader; import org.pcap4j.core.PcapPacket; import java.util.ArrayList; @@ -15,10 +17,12 @@ public class PcapProcessingPipeline { private final PcapReader mPcapReader; private final List mPacketConsumers; + private final PcapPacketFilter mPacketFilter; - public PcapProcessingPipeline(PcapReader pcapReader) { + public PcapProcessingPipeline(PcapReader pcapReader, PcapPacketFilter packetFilter) { mPcapReader = pcapReader; mPacketConsumers = new ArrayList<>(); + mPacketFilter = packetFilter; } public void addPcapPacketConsumer(PcapPacketConsumer packetConsumer) { @@ -27,10 +31,18 @@ public class PcapProcessingPipeline { public void executePipeline() { PcapPacket packet; + long count = 0; while ((packet = mPcapReader.readNextPacket()) != null) { + if (mPacketFilter != null && !mPacketFilter.shouldIncludePacket(packet)) { + continue; + } for (PcapPacketConsumer consumer : mPacketConsumers) { consumer.consumePacket(packet); } + count++; + if (count % 1000 == 0) { + System.out.println("Processed " + count + " packets"); + } } } -- 2.34.1