public OutputAction build() { return new OutputActionImpl(this); }
public OutputActionBuilder(OutputAction base) { this._maxLength = base.getMaxLength(); this._outputNodeConnector = base.getOutputNodeConnector(); if (base instanceof OutputActionImpl) { OutputActionImpl _impl = (OutputActionImpl) base; this.augmentation = new HashMap<>(_impl.augmentation); } }
/** * Create a new MD-SAL output action that transmits packets to the * specified port. * * @param port The URI that specifies the output port. * @return An {@link OutputActionCase} instance. */ public static OutputActionCase newOutputActionCase(Uri port) { OutputAction out = new OutputActionBuilder(). setOutputNodeConnector(port). setMaxLength(OUTPUT_MAX_LEN). build(); return new OutputActionCaseBuilder(). setOutputAction(out). build(); }
private static OutputActionCase _toAction(final Output sourceAction) { return new OutputActionCaseBuilder() .setOutputAction( new OutputActionBuilder().setOutputNodeConnector(MDFlowMapping.toUri(sourceAction.getPort())).build() ).build(); }
/** * Return the egress switch port specified by the given action. * * @param action An {@link OutputActionCase} instance. * @return A MD-SAL node connector identifier which specifies the output * switch port. {@code null} if not found. */ private static String getOutputPort(OutputActionCase action) { OutputAction output = action.getOutputAction(); if (output != null) { Uri uri = output.getOutputNodeConnector(); if (uri != null) { return uri.getValue(); } } return null; }
public OutputActionBuilder setMaxLength(java.lang.Integer value) { if (value != null) { BigInteger _constraint = BigInteger.valueOf(value); boolean isValidRange = false; for (Range<BigInteger> r : _maxLength_range()) { if (r.contains(_constraint)) { isValidRange = true; } } if (!isValidRange) { throw new IllegalArgumentException(String.format("Invalid range: %s, expected: %s.", value, _maxLength_range)); } } this._maxLength = value; return this; } public static List<Range<BigInteger>> _maxLength_range() {
private static List<Action> createNonAppyOutputAction() { List<Action> actionList = new ArrayList<Action>(); ActionBuilder ab = new ActionBuilder(); OutputActionBuilder output = new OutputActionBuilder(); Uri value = new Uri(OutputPortValues.CONTROLLER.toString()); output.setOutputNodeConnector(value); //output.setMaxLength(null); output.setMaxLength(66000); ab.setAction(new OutputActionCaseBuilder().setOutputAction(output.build()).build()); actionList.add(ab.build()); return actionList; }
public static Action outputAction(NodeConnectorId id) { return new OutputActionCaseBuilder() .setOutputAction(new OutputActionBuilder() .setOutputNodeConnector(new Uri(id.getValue())) .build()) .build(); }
/** * {@inheritDoc} */ @Override public String getDescription(Action act) throws RpcException { OutputActionCase ac = cast(OutputActionCase.class, act); OutputAction action = ac.getOutputAction(); String port = null; Integer len = null; if (action != null) { len = action.getMaxLength(); Uri uri = action.getOutputNodeConnector(); if (uri != null) { port = uri.getValue(); } } return new StringBuilder("OUTPUT(port="). append(port).append(", len=").append(len).append(')').toString(); }
private void processOutputAction(OutputActionCase action, FlowTableLookUpResult result) { Uri nodeConnector = action.getOutputAction().getOutputNodeConnector(); if (nodeConnector.getValue().matches("\\d+")) { result.outputNodeConnectors.add(nodeConnector); } else if (nodeConnector.getValue().matches("CONTROLLER")) { result.sendToController = true; } }
public static Action createActionPktIn(final int pktLength, final int order) { OutputActionBuilder output = new OutputActionBuilder(); output.setMaxLength(new Integer(0xffff)); Uri controllerPort = new Uri(OutputPortValues.CONTROLLER.toString()); output.setOutputNodeConnector(controllerPort); ActionBuilder ab = createActionBuilder(order); ab.setAction(new OutputActionCaseBuilder().setOutputAction(output.build()).build()); return ab.build(); }
public static Action outputAction(NodeConnectorId id) { return new OutputActionCaseBuilder() .setOutputAction(new OutputActionBuilder().setOutputNodeConnector(new Uri(id.getValue())).build()).build(); }
private Action getSendToControllerAction() { Action sendToController = new ActionBuilder() .setOrder(0) .setKey(new ActionKey(0)) .setAction(new OutputActionCaseBuilder() .setOutputAction(new OutputActionBuilder() .setMaxLength(0xffff) .setOutputNodeConnector(new Uri(OutputPortValues.CONTROLLER.toString())) .build()) .build()) .build(); return sendToController; }
public static Action outputAction(NodeConnectorId id) { return new OutputActionCaseBuilder() .setOutputAction(new OutputActionBuilder() .setOutputNodeConnector(new Uri(id.getValue())) .build()) .build(); }
/** * Create OF action to output to a specific port * @param order An integer representing the order of the Action * within the table. * @param outputPort OVS port to output the packet to * @return Action with Order and Output port */ public static Action createOutputToPort(int order, String outputPort) { return new ActionBuilder().setOrder(order) .setKey(new ActionKey(order)) .setAction(new OutputActionCaseBuilder() .setOutputAction(new OutputActionBuilder() .setMaxLength(0xffff) .setOutputNodeConnector(new Uri(outputPort)) .build()) .build()) .build(); }
public static Action createActionOutPort(final String portUri, final int order) { OutputActionBuilder output = new OutputActionBuilder(); Uri value = new Uri(portUri); output.setOutputNodeConnector(value); ActionBuilder ab = createActionBuilder(order); ab.setAction(new OutputActionCaseBuilder().setOutputAction(output.build()).build()); return ab.build(); }
private Action getNormalAction() { Action normal = new ActionBuilder() .setOrder(0) .setKey(new ActionKey(0)) .setAction(new OutputActionCaseBuilder() .setOutputAction(new OutputActionBuilder() .setMaxLength(0xffff) .setOutputNodeConnector(new Uri(OutputPortValues.NORMAL.toString())) .build()) .build()) .build(); return normal; }
/** * Creates {@link Action} representing output to the controller * * @param order the order for the action */ public static Action createSendToControllerAction(int order) { return new ActionBuilder().setOrder(order) .setKey(new ActionKey(order)) .setAction( new OutputActionCaseBuilder().setOutputAction( new OutputActionBuilder().setMaxLength(0xffff) .setOutputNodeConnector(new Uri(OutputPortValues.CONTROLLER.toString())) .build()).build()) .build(); }
/** * @param order An integer representing the order of the Action * withinin the table. * @return Action with an order */ public static Action createOutputNormal(int order) { return new ActionBuilder().setOrder(order) .setKey(new ActionKey(order)) .setAction( new OutputActionCaseBuilder().setOutputAction( new OutputActionBuilder().setMaxLength(0xffff) .setOutputNodeConnector(new Uri(OutputPortValues.NORMAL.toString())) .build()).build()) .build(); }
/** * Creates {@link Action} representing output to the controller * @param order the order for the action * @return Action */ public static Action createSendToControllerAction(int order) { return new ActionBuilder().setOrder(order) .setKey(new ActionKey(order)) .setAction( new OutputActionCaseBuilder().setOutputAction( new OutputActionBuilder().setMaxLength(0xffff) .setOutputNodeConnector(new Uri(OutputPortValues.CONTROLLER.toString())) .build()).build()) .build(); }