Commit b03c3531 authored by Simon Pastor's avatar Simon Pastor Committed by Kevin Di Lallo
Browse files

edge-app mobility

parent 9996afa0
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -30,7 +30,9 @@ import {
  execPOAs,
  execMobTypes,
  execEdges,
  execEdgeApps,
  execFogs,
  execFogEdges,
  execZones
} from '../../state/exec';

@@ -77,6 +79,8 @@ const EventCreationFields = (props) => {
        FOGs={props.FOGs}
	ZONEs={props.ZONEs}
        MobTypes={props.MobTypes}
        FogEdges={props.FogEdges}
        EdgeApps={props.EdgeApps}
      />
    );
  case NETWORK_CHARACTERISTICS_EVENT:
@@ -136,6 +140,8 @@ class EventCreationPane extends Component {
          FOGs={this.props.FOGs}
	  ZONEs={this.props.ZONEs}
          MobTypes={this.props.MobTypes}
          EdgeApps={this.props.EdgeApps}
          FogEdges={this.props.FogEdges}
          table={this.props.table}
          networkElements={this.props.networkElements}
        />
@@ -167,6 +173,8 @@ const mapStateToProps = state => {
    FOGs: execFogs(state),
    ZONEs: execZones(state),
    MobTypes: execMobTypes(state),
    EdgeApps: execEdgeApps(state),
    FogEdges: execFogEdges(state),
    table: state.exec.table,
    networkElements: state.exec.table.entries
  };
+8 −0
Original line number Diff line number Diff line
@@ -95,6 +95,7 @@ class MobilityEventPane extends Component {
    }

//    let found = this.props.UEs.find(element => element.label == this.values.eventTarget);
    //find if its the selection was a UE, otherwise (in order) EDGE, FOG, EDGE-APP, UE-APP
    var target = this.values.eventTarget;
    var found = this.props.UEs.find(function(element) {
        return element.label == target;
@@ -116,6 +117,13 @@ class MobilityEventPane extends Component {
                });
            if (found !== undefined) {
                populateDestination = this.props.POAs;
            } else {
                found = this.props.EdgeApps.find(function(element) {
                    return element.label == target;
                });
                if (found !== undefined) {
                    populateDestination = this.props.FogEdges;
                }
            }
        }
    }
+16 −3
Original line number Diff line number Diff line
@@ -25,7 +25,12 @@ import { execVisReducer } from './vis-reducer';
import { execTableReducer } from './table-reducer';
import { execSelectedScenarioElement } from './selected-scenario-element';
import { execApiResultsReducer } from './api-results';
import { getElemFieldVal, FIELD_TYPE } from '../../util/elem-utils';
import {
  getElemFieldVal,
  FIELD_GROUP,
  FIELD_TYPE
} from '../../util/elem-utils';


export * from './type-reducer';
export * from './state-reducer';
@@ -41,7 +46,15 @@ const execUEs = createSelector([execTableElements], elems => {
});

const execMobTypes = createSelector([execTableElements], elems => {
  return _.filter(elems, elem => (getElemFieldVal(elem, FIELD_TYPE) === 'UE' || getElemFieldVal(elem, FIELD_TYPE) === 'FOG' || getElemFieldVal(elem, FIELD_TYPE) === 'EDGE'));
  return _.filter(elems, elem => (getElemFieldVal(elem, FIELD_TYPE) === 'UE' || getElemFieldVal(elem, FIELD_TYPE) === 'FOG' || getElemFieldVal(elem, FIELD_TYPE) === 'EDGE' || (getElemFieldVal(elem, FIELD_TYPE) === 'EDGE APPLICATION' && getElemFieldVal(elem, FIELD_GROUP) === "")));
});

const execFogEdges = createSelector([execTableElements], elems => {
  return _.filter(elems, elem => (getElemFieldVal(elem, FIELD_TYPE) === 'FOG' || getElemFieldVal(elem, FIELD_TYPE) === 'EDGE'));
});

const execEdgeApps = createSelector([execTableElements], elems => {
  return _.filter(elems, elem => getElemFieldVal(elem, FIELD_TYPE) === 'EDGE APPLICATION');
});

const execEdges = createSelector([execTableElements], elems => {
@@ -60,7 +73,7 @@ const execPOAs = createSelector([execTableElements], elems => {
  return _.filter(elems, elem => getElemFieldVal(elem, FIELD_TYPE) === 'POA');
});

export { execUEs, execPOAs, execMobTypes, execEdges, execFogs, execZones };
export { execUEs, execPOAs, execMobTypes, execEdges, execFogs, execZones, execEdgeApps, execFogEdges };

const execReducer = combineReducers({
  type: typeReducer,