Merge Step 1

Created New Java File "EzimMerge"
// will change the class name during the last refactoring

Added all common variables.
The 4 classes to be combined now extends this new class.
They no longer need to have the same variables initialized in each one.

Note : The initialization of the variables were different for the
fileSender .
Merge Step 2

Added all the required imports in the new java file
Merge Step 3

// Updated the "EzimMerge"

Implemented Runnable

Created new function that will be called from one of the 4 class with a
unique string that will use another new function to determine whether it
is a request , response , confirmation or file sending. Then use the
run() function accordingly.
Merge Step 4

Created the new run() function in the new class.

Modified the other classes accordingly.
Receiver Class Patchset(1/5)

Created the receiver class and populated it with the appropriate methods
from the EzimDTXSemantics class
Receiver Class Patchset(2/5)

Fixed the method calls in the EzimReceiver class so they don't call
methods in EzimDTXSemantics but instead call its own methods.
Receiver Class Patchset(3/5)

Made all the attributes in the EzimDTXSemantics public.
Receiver Class Patchset(4/5)

Replaced a call to EzimDtxSemantics.parser() to EzimReceiver.parser()
Receiver Class Patchset(5/5)

Removed the methods from EzimDTXSemantics that are now in EzimReceiver
Revert "Merge Step 4"

This reverts commit 65356cc5a34db8c1bd9c975bdd564a777364291b.
Revert "Merge Step 3"

This reverts commit a7155a481b24f995d8c329dd908a3d9a620525db.
Revert "Merge Step 2"

This reverts commit b0cd1b68a85ed7ccc3848bd47fce610d1940c143.
Revert "Merge Step 1"

This reverts commit a5665b198e2c3e810bbd97898625521a1b4159f2.
EzimMerge Class Patchset(0/5)

Created the new class "EzimMerge" that will combine :
1. "EzimFileResponder" class
2. "EzimFileRequester" class
3. "EzimFileConfirmer" class
4. "EzimFileSender" class

Required Imports added .

The variables from the 4 above classes were added to the "EzimMerge"
class

They were then deleted in their previous classes which now extends
"EzimMerge"
EzimMerge Class Patchset(1/5)

The new "EzimMerge" class now implements the Runnable interface.

A new function "EzimFileType" has been added that will take a string as
a parameter which will define whether it is a file request , confirm ,
response or file sending.

The variables associated with the functions has been added.

A new function "doRun" has been created that will be called from the 4
other classes. It takes a unique string as a parameter that will depend
on which class is calling it.

The "run" function for this class has been created.
EzimMerge Class Patchset(2/5)

The "run" function for the class "EzimMerge" has been created .
It will combine the 4 classes that are to be merged and process their
operations accordingly , depending on which class called the "doRun"
function which will then call this one.
EzimMerge Class Patchset (3/5)

The "run" function for the 4 classes mentioned in patchset 0 has been
modified with a single "doRun" function that will make a call to the new
class "EzimMerge" . It will have a unique string as parameter depending
on which class makes the call.