META-INF.yang.ocp-extension.yang Maven / Gradle / Ivy
/*
* Copyright (c) 2015 Foxconn Corporation and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
module ocp-extension {
namespace "urn:opendaylight:ocp:extension";
prefix "ocpext";
import ietf-yang-types {prefix yang;}
import ietf-inet-types { prefix inet; }
import ocp-types {prefix ocpt;}
organization "Foxconn";
contact "[email protected]";
description "OCP extension: initialization";
revision "2015-08-11" {
description
"Initial revision";
}
grouping helloInd {
leaf version {
type string;
}
leaf vendorId {
type string;
}
leaf serialNumber {
type string;
}
}
grouping helloAck {
leaf result {
type OriHelloAckRes;
}
}
typedef OriHelloAckRes {
type enumeration {
enum "SUCCESS";
enum "FAIL_SYNTAX_ERROR";
enum "FAIL_UNRECOGNIZED_MESSAGE";
enum "FAIL_MISSING_PARAMETER";
enum "FAIL_PARAMETER_ERROR";
enum "FAIL_UNKNOWN_OBJTYPE";
enum "FAIL_PARAMETER_FAIL";
enum "FAIL_OCP_VERSION";
}
}
grouping redirectInput {
leaf ip {
type inet:ipv4-address;
}
}
grouping redirectOutput {
leaf result {
type string;
}
}
rpc re-direct {
input {
uses ocpt:ocpHeader;
uses redirectInput;
}
output {
uses ocpt:ocpHeader;
uses redirectOutput;
}
} // rpc re-direct
rpc hello {
input {
uses ocpt:ocpHeader;
uses helloAck;
}
} // rpc hello
notification hello-message {
uses ocpt:ocpHeader;
uses helloInd;
} // notification hello-message
}