This commit is contained in:
2021-04-06 00:45:28 +02:00
commit 17fabc368e
836 changed files with 3042963 additions and 0 deletions

View File

@@ -0,0 +1,148 @@
package org.fog.application;
/**
* Class represents application edges which connect modules together and represent data dependency between them.
* @author Harshit Gupta
*
*/
public class AppEdge {
public static final int SENSOR = 1; // App Edge originates from a sensor
public static final int ACTUATOR = 2; // App Edge leads to an actuator
public static final int MODULE = 3; // App Edge is between application modules
/**
* Name of source application module
*/
private String source;
/**
* Name of destination application module
*/
private String destination;
/**
* CPU length (in MIPS) of tuples carried by the application edge
*/
private double tupleCpuLength;
/**
* Network length (in bytes) of tuples carried by the application edge
*/
private double tupleNwLength;
/**
* Type of tuples carried by the application edge
*/
private String tupleType;
/**
* Direction of tuples carried by the application edge.
*/
private int direction;
private int edgeType;
/**
* Periodicity of application edge (in case it is periodic).
*/
private double periodicity;
/**
* Denotes if the application edge is a periodic edge.
*/
private boolean isPeriodic;
public AppEdge(){
}
public AppEdge(String source, String destination, double tupleCpuLength,
double tupleNwLength, String tupleType, int direction, int edgeType){
setSource(source);
setDestination(destination);
setTupleCpuLength(tupleCpuLength);
setTupleNwLength(tupleNwLength);
setTupleType(tupleType);
setDirection(direction);
setEdgeType(edgeType);
setPeriodic(false);
}
public AppEdge(String source, String destination, double periodicity, double tupleCpuLength,
double tupleNwLength, String tupleType, int direction, int edgeType){
setSource(source);
setDestination(destination);
setTupleCpuLength(tupleCpuLength);
setTupleNwLength(tupleNwLength);
setTupleType(tupleType);
setDirection(direction);
setEdgeType(edgeType);
setPeriodic(true);
setPeriodicity(periodicity);
}
public String getSource() {
return source;
}
public void setSource(String source) {
this.source = source;
}
public String getDestination() {
return destination;
}
public void setDestination(String destination) {
this.destination = destination;
}
public double getTupleCpuLength() {
return tupleCpuLength;
}
public void setTupleCpuLength(double tupleCpuLength) {
this.tupleCpuLength = tupleCpuLength;
}
public double getTupleNwLength() {
return tupleNwLength;
}
public void setTupleNwLength(double tupleNwLength) {
this.tupleNwLength = tupleNwLength;
}
public String getTupleType() {
return tupleType;
}
public void setTupleType(String tupleType) {
this.tupleType = tupleType;
}
public int getDirection() {
return direction;
}
public void setDirection(int direction) {
this.direction = direction;
}
public int getEdgeType() {
return edgeType;
}
public void setEdgeType(int edgeType) {
this.edgeType = edgeType;
}
public double getPeriodicity() {
return periodicity;
}
public void setPeriodicity(double periodicity) {
this.periodicity = periodicity;
}
public boolean isPeriodic() {
return isPeriodic;
}
public void setPeriodic(boolean isPeriodic) {
this.isPeriodic = isPeriodic;
}
@Override
public String toString() {
return "AppEdge [source=" + source + ", destination=" + destination
+ ", tupleType=" + tupleType + "]";
}
}