diff --git a/dmz2.yaml b/dmz2.yaml index f92541b..788c606 100644 --- a/dmz2.yaml +++ b/dmz2.yaml @@ -24,8 +24,8 @@ vnf: type: data VNFC: VirtualMachine-3 local_iface_name: xe1 - description: Created by VIBNEMO translator from source dmz2, template dmz on 2017/06/02 - 02:02:24 + description: Created by VIBNEMO translator from source dmz2, template dmz on 2017/06/24 + 19:17:21 VNFC: - name: VirtualMachine-1 description: Dataplane VM1 with 4 threads, 2 GB hugepages, 2 SR-IOV interface diff --git a/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/LanguageStyle.jj b/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/LanguageStyle.jj index 3614f24..fc8661b 100644 --- a/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/LanguageStyle.jj +++ b/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/LanguageStyle.jj @@ -234,7 +234,7 @@ String DeleteIntent(UserId userId, DataBroker dataBroker, TenantManage tenantMan { return DeleteConnectionPoint(userId,dataBroker,tenantManage); } -| < TEMPLATEDEFINITION > +| < NODEMODEL > { return DeleteTemplateDefinition(userId,dataBroker,tenantManage); } @@ -841,18 +841,18 @@ String abstractConnectionPoint(UpdateTemplateDefinitionLang definition): } ( - ( + ( extInterfaceName = < TEMPID > - { - extInt=extInterfaceName.image; - System.out.println(extInterfaceName.image); - } + { + extInt=extInterfaceName.image; + System.out.println(extInterfaceName.image); + } | extInterfaceName = < ID > { extInt=extInterfaceName.image; - System.out.println(extInterfaceName.image); - } - ) + System.out.println(extInterfaceName.image); + } + ) )? { @@ -883,8 +883,14 @@ String DeleteConnection(UserId userId, DataBroker dataBroker, TenantManage tenan DeleteConnectionLang deleteConnectionlang = new DeleteConnectionLang(dataBroker, tenantManage); } { + ( objConnNameToken = < ID > +| + objConnNameToken = < TEMPID > +) + < SEMICOLON > + { return deleteConnectionlang.DeleteConnectionHandling(userId, objConnNameToken.image); } @@ -943,7 +949,7 @@ String DeleteConnectionPoint(UserId userId, DataBroker dataBroker, TenantManage ( objConnPointNameToken = < ID > | - objConnPointNameToken = < TEMPID > + objConnPointNameToken = < TEMPID > < SEMICOLON > ) @@ -961,7 +967,7 @@ String DeleteTemplateDefinition(UserId userId, DataBroker dataBroker, TenantMana ( objTemplateDefinitionNameToken = < ID > | - objTemplateDefinitionNameToken = < TEMPID > + objTemplateDefinitionNameToken = < TEMPID > ) < SEMICOLON > { @@ -1227,4 +1233,3 @@ LinkedHashMap nodeMultiProperty(): return propertyvalue; } } - diff --git a/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/NEMOparser.java b/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/NEMOparser.java index f5958b2..454c2bf 100644 --- a/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/NEMOparser.java +++ b/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/languagestyle/NEMOParse/NEMOparser.java @@ -7,6 +7,7 @@ */ /* Generated By:JavaCC: Do not edit this line. NEMOparser.java */ package org.opendaylight.nemo.user.vnspacemanager.languagestyle.NEMOParse; + import org.opendaylight.nemo.user.vnspacemanager.languagestyle.updateintentlang.UpdateNodeLang; import org.opendaylight.nemo.user.vnspacemanager.languagestyle.updateintentlang.UpdateConnectionLang; import org.opendaylight.nemo.user.vnspacemanager.languagestyle.updateintentlang.UpdateFlowLang; @@ -144,8 +145,8 @@ static final public String DeleteIntent(UserId userId, DataBroker dataBroker, Te jj_consume_token(CONNECTIONPOINT); {if (true) return DeleteConnectionPoint(userId,dataBroker,tenantManage);} break; - case TEMPLATEDEFINITION: - jj_consume_token(TEMPLATEDEFINITION); + case NODEMODEL: + jj_consume_token(NODEMODEL); {if (true) return DeleteTemplateDefinition(userId,dataBroker,tenantManage);} break; default: @@ -1136,7 +1137,18 @@ static final public String DeleteNode(UserId userId, DataBroker dataBroker, Tena static final public String DeleteConnection(UserId userId, DataBroker dataBroker, TenantManage tenantManage) throws ParseException { Token objConnNameToken = null; DeleteConnectionLang deleteConnectionlang = new DeleteConnectionLang(dataBroker, tenantManage); - objConnNameToken = jj_consume_token(ID); + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case ID: + objConnNameToken = jj_consume_token(ID); + break; + case TEMPID: + objConnNameToken = jj_consume_token(TEMPID); + break; + default: + jj_la1[60] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } jj_consume_token(SEMICOLON); {if (true) return deleteConnectionlang.DeleteConnectionHandling(userId, objConnNameToken.image);} throw new Error("Missing return statement in function"); @@ -1171,7 +1183,7 @@ static final public String DeleteTemplateInstance(UserId userId, DataBroker data objTemplateInstanceNameToken = jj_consume_token(TEMPID); break; default: - jj_la1[60] = jj_gen; + jj_la1[61] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1192,7 +1204,7 @@ static final public String DeleteConnectionPoint(UserId userId, DataBroker dataB jj_consume_token(SEMICOLON); break; default: - jj_la1[61] = jj_gen; + jj_la1[62] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1211,7 +1223,7 @@ static final public String DeleteTemplateDefinition(UserId userId, DataBroker da objTemplateDefinitionNameToken = jj_consume_token(TEMPID); break; default: - jj_la1[62] = jj_gen; + jj_la1[63] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1269,7 +1281,7 @@ static final public String Query(UserId userId, DataBroker dataBroker, TenantMan objItemToken = jj_consume_token(OPERATIONS); break; default: - jj_la1[63] = jj_gen; + jj_la1[64] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1279,7 +1291,7 @@ static final public String Query(UserId userId, DataBroker dataBroker, TenantMan objTargetToken = jj_consume_token(ID); break; default: - jj_la1[64] = jj_gen; + jj_la1[65] = jj_gen; ; } jj_consume_token(SEMICOLON); @@ -1326,7 +1338,7 @@ static final public LinkedHashMap conditionTarget() throws ParseE targetValue.put(objRangeLeft.image+","+objRangeRight.image,"range"); break; default: - jj_la1[65] = jj_gen; + jj_la1[66] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1387,7 +1399,7 @@ static final public LinkedHashMap property() throws ParseExceptio propertyvalue.put(objPropertyValueToken.image, "string"); break; default: - jj_la1[66] = jj_gen; + jj_la1[67] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1405,13 +1417,13 @@ static final public LinkedHashMap property() throws ParseExceptio propertyvalue.put(objRangeLeft.image+","+objRangeRight.image,"range"); break; default: - jj_la1[67] = jj_gen; + jj_la1[68] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: - jj_la1[68] = jj_gen; + jj_la1[69] = jj_gen; LinkedHashMap multiProperty = nodeMultiProperty(); for (String value : multiProperty.keySet()) { @@ -1439,7 +1451,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[69] = jj_gen; + jj_la1[70] = jj_gen; break label_19; } jj_consume_token(COMMA); @@ -1457,7 +1469,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[70] = jj_gen; + jj_la1[71] = jj_gen; break label_20; } jj_consume_token(COMMA); @@ -1475,7 +1487,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[71] = jj_gen; + jj_la1[72] = jj_gen; break label_21; } jj_consume_token(COMMA); @@ -1493,7 +1505,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[72] = jj_gen; + jj_la1[73] = jj_gen; break label_22; } jj_consume_token(COMMA); @@ -1511,7 +1523,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[73] = jj_gen; + jj_la1[74] = jj_gen; break label_23; } jj_consume_token(COMMA); @@ -1529,7 +1541,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[74] = jj_gen; + jj_la1[75] = jj_gen; break label_24; } jj_consume_token(COMMA); @@ -1547,7 +1559,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[75] = jj_gen; + jj_la1[76] = jj_gen; break label_25; } jj_consume_token(COMMA); @@ -1565,7 +1577,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars ; break; default: - jj_la1[76] = jj_gen; + jj_la1[77] = jj_gen; break label_26; } jj_consume_token(COMMA); @@ -1582,7 +1594,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars propertyvalue.put(objRangeLeft.image+","+objRangeRight.image,"range"); break; default: - jj_la1[77] = jj_gen; + jj_la1[78] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -1601,7 +1613,7 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars static public Token jj_nt; static private int jj_ntk; static private int jj_gen; - static final private int[] jj_la1 = new int[78]; + static final private int[] jj_la1 = new int[79]; static private int[] jj_la1_0; static private int[] jj_la1_1; static private int[] jj_la1_2; @@ -1611,13 +1623,13 @@ static final public LinkedHashMap nodeMultiProperty() throws Pars jj_la1_init_2(); } private static void jj_la1_init_0() { - jj_la1_0 = new int[] {0xe000000,0x1e000000,0x20000000,0x20000000,0x40,0x80000000,0x40,0x0,0x0,0x40,0x0,0x0,0x40,0x0,0x40,0x40,0x0,0x4000,0x1f8000,0x7000,0x7000,0x1f8000,0x0,0x20,0x40,0x20,0x0,0x0,0x40,0x0,0x0,0x0,0x20000000,0x20000000,0x40,0x80000000,0x40,0x0,0x0,0x40,0x0,0x0,0x40,0x0,0x40,0x40,0x0,0x4000,0x1f8000,0x7000,0x7000,0x1f8000,0x0,0x20,0x40,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0000000,0x0,0x100,0x0,0x100,0x100,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x100,}; + jj_la1_0 = new int[] {0xe000000,0x1e000000,0x20000000,0x20000000,0x40,0x80000000,0x40,0x0,0x0,0x40,0x0,0x0,0x40,0x0,0x40,0x40,0x0,0x4000,0x1f8000,0x7000,0x7000,0x1f8000,0x0,0x20,0x40,0x20,0x0,0x0,0x40,0x0,0x0,0x0,0x20000000,0x20000000,0x40,0x80000000,0x40,0x0,0x0,0x40,0x0,0x0,0x40,0x0,0x40,0x40,0x0,0x4000,0x1f8000,0x7000,0x7000,0x1f8000,0x0,0x20,0x40,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0000000,0x0,0x100,0x0,0x100,0x100,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x100,}; } private static void jj_la1_init_1() { - jj_la1_1 = new int[] {0x0,0x400,0x200052,0xc0005a,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,0x0,0x1,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x200,0x7000000,0x0,0x7000000,0x1,0x1000,0x5a,0x5a,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,0x0,0x1,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x200,0x0,0x8000000,0x0,0x0,0x0,0x0,0x1e23a5,0x800,0x80000000,0x0,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,}; + jj_la1_1 = new int[] {0x0,0x400,0x200052,0x60005a,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,0x0,0x1,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x200,0x7000000,0x0,0x7000000,0x1,0x1000,0x5a,0x5a,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,0x0,0x1,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x200,0x0,0x8000000,0x0,0x0,0x0,0x0,0x0,0x1e23a5,0x800,0x80000000,0x0,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,}; } private static void jj_la1_init_2() { - jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x3,0x3,0x3,0x3,0x1,0x0,0x61,0x1eb,0x1eb,0x1eb,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1eb,}; + jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x0,0x3,0x3,0x3,0x3,0x3,0x1,0x0,0x61,0x1eb,0x1eb,0x1eb,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1eb,}; } /** Constructor with InputStream. */ @@ -1638,7 +1650,7 @@ public NEMOparser(java.io.InputStream stream, String encoding) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 78; i++) jj_la1[i] = -1; + for (int i = 0; i < 79; i++) jj_la1[i] = -1; } /** Reinitialise. */ @@ -1652,7 +1664,7 @@ static public void ReInit(java.io.InputStream stream, String encoding) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 78; i++) jj_la1[i] = -1; + for (int i = 0; i < 79; i++) jj_la1[i] = -1; } /** Constructor. */ @@ -1669,7 +1681,7 @@ public NEMOparser(java.io.Reader stream) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 78; i++) jj_la1[i] = -1; + for (int i = 0; i < 79; i++) jj_la1[i] = -1; } /** Reinitialise. */ @@ -1679,7 +1691,7 @@ static public void ReInit(java.io.Reader stream) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 78; i++) jj_la1[i] = -1; + for (int i = 0; i < 79; i++) jj_la1[i] = -1; } /** Constructor with generated Token Manager. */ @@ -1695,7 +1707,7 @@ public NEMOparser(NEMOparserTokenManager tm) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 78; i++) jj_la1[i] = -1; + for (int i = 0; i < 79; i++) jj_la1[i] = -1; } /** Reinitialise. */ @@ -1704,7 +1716,7 @@ public void ReInit(NEMOparserTokenManager tm) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 78; i++) jj_la1[i] = -1; + for (int i = 0; i < 79; i++) jj_la1[i] = -1; } static private Token jj_consume_token(int kind) throws ParseException { @@ -1760,7 +1772,7 @@ static public ParseException generateParseException() { la1tokens[jj_kind] = true; jj_kind = -1; } - for (int i = 0; i < 78; i++) { + for (int i = 0; i < 79; i++) { if (jj_la1[i] == jj_gen) { for (int j = 0; j < 32; j++) { if ((jj_la1_0[i] & (1< templateInstanceMap = new HashMap(); + templateInstanceMap = tenantManage.getInstanceDataStore(userId); + + for (TemplateInstance i: templateInstanceMap.values()){ + if (i.getTemplateInstanceName().getValue().equals(nodename)){ + + return deleteTemplateInstance.DeleTemplateInstanceHandling(userId, i.getTemplateInstanceId(), nodename); + } + } } + + if (tenantManage.getObjectId(userId,nodename)!=null){ + + NodeId nodeId = new NodeId(tenantManage.getObjectId(userId,nodename)); + + return deleteNode.DeleNodeHandling(userId,nodeId); + } + if (tenantManage.getNodeDataStore(userId) != null) { MapnodeDSMap = new HashMap(); nodeDSMap= tenantManage.getNodeDataStore(userId); + for (Node n: nodeDSMap.values()){ - if(n.getNodeName().equals(new NodeName(nodename))){ + if(n.getNodeName().getValue().equals(nodename)){ + return deleteNode.DeleNodeHandling(userId,n.getNodeId()); } } } + return "The node " + nodename + " does not exist."; } } diff --git a/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/structurestyle/deleteintent/DeleteNode.java b/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/structurestyle/deleteintent/DeleteNode.java index 63667bb..706fd03 100644 --- a/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/structurestyle/deleteintent/DeleteNode.java +++ b/nemo-impl/src/main/java/org/opendaylight/nemo/user/vnspacemanager/structurestyle/deleteintent/DeleteNode.java @@ -47,7 +47,7 @@ public String DeleNodeHandling(UserId userId,NodeId nodeId){ } } if (!nodeExist){ - return "The node instance " +nodeId.getValue()+" is not exist."; + return "The node instance " +nodeId.getValue()+" does not exist."; } else { if (tenantManage.getConnection(userId)!=null){ diff --git a/nemo-impl/src/test/resources/delete.txt b/nemo-impl/src/test/resources/delete.txt index b176c21..fef9993 100644 --- a/nemo-impl/src/test/resources/delete.txt +++ b/nemo-impl/src/test/resources/delete.txt @@ -1,3 +1,4 @@ -DELETE ConnectionPoint qos.b; +DELETE Node dmz2; + diff --git a/nemo-impl/src/test/resources/workfile.txt b/nemo-impl/src/test/resources/workfile.txt index b103c62..0556c4f 100755 --- a/nemo-impl/src/test/resources/workfile.txt +++ b/nemo-impl/src/test/resources/workfile.txt @@ -14,3 +14,4 @@ CREATE Node dmz2 Type dmz; +