From: Giovanni Meo Date: Wed, 15 May 2013 13:57:37 +0000 (+0000) Subject: Merge "Removed unused private variable containerAwareRegistration - please review... X-Git-Tag: releasepom-0.1.0~457 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=06aa5ce746e29a3760688b2ef2817f50bec5ea7a;hp=332c66867273c6d2f73080ae124c6c4d8977d099 Merge "Removed unused private variable containerAwareRegistration - please review this change" --- diff --git a/opendaylight/arphandler/src/main/java/org/opendaylight/controller/arphandler/internal/ArpHandler.java b/opendaylight/arphandler/src/main/java/org/opendaylight/controller/arphandler/internal/ArpHandler.java index 3730a71f1e..26a86c53a4 100644 --- a/opendaylight/arphandler/src/main/java/org/opendaylight/controller/arphandler/internal/ArpHandler.java +++ b/opendaylight/arphandler/src/main/java/org/opendaylight/controller/arphandler/internal/ArpHandler.java @@ -156,9 +156,11 @@ public class ArpHandler implements IHostFinder, IListenDataPacket { * This is to avoid continuous flooding */ if (Arrays.equals(sourceMAC, getControllerMAC())) { - logger.debug( + if (logger.isDebugEnabled()) { + logger.debug( "Receive the self originated packet (srcMAC {}) --> DROP", HexEncode.bytesToHexString(sourceMAC)); + } return; } @@ -167,18 +169,16 @@ public class ArpHandler implements IHostFinder, IListenDataPacket { subnet = switchManager.getSubnetByNetworkAddress(sourceIP); } if (subnet == null) { - logger.debug("can't find subnet matching {}, drop packet", sourceIP - .toString()); + logger.debug("can't find subnet matching {}, drop packet",sourceIP); return; } - logger.debug("Found {} matching {}", subnet.toString(), sourceIP - .toString()); + logger.debug("Found {} matching {}", subnet, sourceIP); /* * Make sure that the host is a legitimate member of this subnet */ if (!subnet.hasNodeConnector(p)) { logger.debug("{} showing up on {} does not belong to {}", - new Object[] { sourceIP.toString(), p, subnet.toString() }); + new Object[] { sourceIP, p, subnet }); return; } @@ -364,18 +364,17 @@ public class ArpHandler implements IHostFinder, IListenDataPacket { } public void find(InetAddress networkAddress) { - logger.debug("Received find IP {}", networkAddress.toString()); + logger.debug("Received find IP {}", networkAddress); Subnet subnet = null; if (switchManager != null) { subnet = switchManager.getSubnetByNetworkAddress(networkAddress); } if (subnet == null) { - logger.debug("can't find subnet matching IP {}", networkAddress - .toString()); + logger.debug("can't find subnet matching IP {}", networkAddress); return; } - logger.debug("found subnet {}", subnet.toString()); + logger.debug("found subnet {}", subnet); // send a broadcast ARP Request to this interface sendBcastARPRequest(networkAddress, subnet); @@ -394,7 +393,7 @@ public class ArpHandler implements IHostFinder, IListenDataPacket { } if (subnet == null) { logger.debug("can't find subnet matching {}", host - .getNetworkAddress().toString()); + .getNetworkAddress()); return; } sendUcastARPRequest(host, subnet); @@ -419,11 +418,10 @@ public class ArpHandler implements IHostFinder, IListenDataPacket { subnet = switchManager.getSubnetByNetworkAddress(dIP); } if (subnet == null) { - logger.debug("can't find subnet matching {}, drop packet", dIP - .toString()); + logger.debug("can't find subnet matching {}, drop packet", dIP); return; } - logger.debug("Found {} matching {}", subnet.toString(), dIP.toString()); + logger.debug("Found {} matching {}", subnet, dIP); /* * unknown destination host, initiate ARP request */ diff --git a/opendaylight/hosttracker/implementation/src/main/java/org/opendaylight/controller/hosttracker/internal/HostTracker.java b/opendaylight/hosttracker/implementation/src/main/java/org/opendaylight/controller/hosttracker/internal/HostTracker.java index f416f29a25..f5123eb4d0 100644 --- a/opendaylight/hosttracker/implementation/src/main/java/org/opendaylight/controller/hosttracker/internal/HostTracker.java +++ b/opendaylight/hosttracker/implementation/src/main/java/org/opendaylight/controller/hosttracker/internal/HostTracker.java @@ -394,8 +394,7 @@ public class HostTracker implements IfIptoHost, IfHostListener, arphost.setHostIP(networkAddr); arphost.setSent_count((short) 1); ARPPendingList.add(arphost); - logger.debug("Host Added to ARPPending List, IP: {}", - networkAddr.toString()); + logger.debug("Host Added to ARPPending List, IP: {}", networkAddr); } private void removePendingARPFromList(int index) { @@ -434,7 +433,7 @@ public class HostTracker implements IfIptoHost, IfHostListener, */ removePendingARPFromList(i); logger.debug("Host Removed from ARPPending List, IP: {}", - networkAddr.toString()); + networkAddr); return; } } @@ -452,7 +451,7 @@ public class HostTracker implements IfIptoHost, IfHostListener, */ failedARPReqList.remove(i); logger.debug("Host Removed from FailedARPReqList List, IP: {}", - networkAddr.toString()); + networkAddr); return; } } @@ -708,7 +707,7 @@ public class HostTracker implements IfIptoHost, IfHostListener, for (String switchName : hierarchy) { buf.append(switchName + "/"); } - logger.debug("{} -> {}", getContainerName(), buf.toString()); + logger.debug("{} -> {}", getContainerName(), buf); num++; } } @@ -991,13 +990,15 @@ public class HostTracker implements IfIptoHost, IfHostListener, * Use the services of arphandler to check if host is still * there */ - logger.trace( - "ARP Probing ({}) for {}({})", - new Object[] { - arp_cntdown, - host.getNetworkAddress().getHostAddress(), - HexEncode.bytesToHexString(host - .getDataLayerAddressBytes()) }); + if (logger.isTraceEnabled()) { + logger.trace( + "ARP Probing ({}) for {}({})", + new Object[] { + arp_cntdown, + host.getNetworkAddress().getHostAddress(), + HexEncode.bytesToHexString(host + .getDataLayerAddressBytes()) }); + } host.setArpSendCountDown(arp_cntdown); hostFinder.probe(host); } @@ -1160,8 +1161,10 @@ public class HostTracker implements IfIptoHost, IfHostListener, switch (type) { case REMOVED: long sid = (Long) node.getID(); - logger.debug("Received removedSwitch for sw id {}", - HexEncode.longToHexString(sid)); + if (logger.isDebugEnabled()) { + logger.debug("Received removedSwitch for sw id {}", + HexEncode.longToHexString(sid)); + } for (Entry entry : hostsDB .entrySet()) { HostNodeConnector host = entry.getValue(); diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/Controller.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/Controller.java index bfa6f0ba0f..2863070cc5 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/Controller.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/Controller.java @@ -70,7 +70,7 @@ public class Controller implements IController, CommandProvider { ISwitch existingSwitch = switches.get(sid); if (existingSwitch != null) { logger.info("Replacing existing {} with New {}", - existingSwitch.toString(), sw.toString()); + existingSwitch, sw); disconnectSwitch(existingSwitch); } switches.put(sid, sw); @@ -175,20 +175,18 @@ public class Controller implements IController, CommandProvider { public void addMessageListener(OFType type, IMessageListener listener) { IMessageListener currentListener = this.messageListeners.get(type); if (currentListener != null) { - logger.warn("{} is already listened by {}", type.toString(), - currentListener.toString()); + logger.warn("{} is already listened by {}", type, + currentListener); } this.messageListeners.put(type, listener); - logger.debug("{} is now listened by {}", type.toString(), - listener.toString()); + logger.debug("{} is now listened by {}", type, listener); } @Override public void removeMessageListener(OFType type, IMessageListener listener) { IMessageListener currentListener = this.messageListeners.get(type); if ((currentListener != null) && (currentListener == listener)) { - logger.debug("{} listener {} is Removed", type.toString(), - listener.toString()); + logger.debug("{} listener {} is Removed", type, listener); this.messageListeners.remove(type); } } @@ -197,19 +195,17 @@ public class Controller implements IController, CommandProvider { public void addSwitchStateListener(ISwitchStateListener listener) { if (this.switchStateListener != null) { logger.warn("Switch events are already listened by {}", - this.switchStateListener.toString()); + this.switchStateListener); } this.switchStateListener = listener; - logger.debug("Switch events are now listened by {}", - listener.toString()); + logger.debug("Switch events are now listened by {}", listener); } @Override public void removeSwitchStateListener(ISwitchStateListener listener) { if ((this.switchStateListener != null) && (this.switchStateListener == listener)) { - logger.debug("SwitchStateListener {} is Removed", - listener.toString()); + logger.debug("SwitchStateListener {} is Removed", listener); this.switchStateListener = null; } } @@ -242,7 +238,7 @@ public class Controller implements IController, CommandProvider { if (((SwitchHandler) sw).isOperational()) { Long sid = sw.getId(); if (this.switches.remove(sid, sw)) { - logger.warn("{} is Disconnected", sw.toString()); + logger.warn("{} is Disconnected", sw); notifySwitchDeleted(sw); } } diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/MessageReadWriteService.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/MessageReadWriteService.java index 3dd99e6006..d2dab0fc94 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/MessageReadWriteService.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/MessageReadWriteService.java @@ -84,7 +84,7 @@ public class MessageReadWriteService implements IMessageReadWrite { this.clientSelectionKey = this.socket.register(this.selector, SelectionKey.OP_WRITE, this); } - logger.trace("Message sent: {}", msg.toString()); + logger.trace("Message sent: {}", msg); } } diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/PriorityMessage.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/PriorityMessage.java index 0c66dccd01..6a2cb9e9c4 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/PriorityMessage.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/PriorityMessage.java @@ -10,8 +10,6 @@ package org.opendaylight.controller.protocol_plugin.openflow.core.internal; import java.util.concurrent.atomic.AtomicLong; -import org.apache.commons.lang3.builder.EqualsBuilder; -import org.apache.commons.lang3.builder.HashCodeBuilder; import org.apache.commons.lang3.builder.ReflectionToStringBuilder; import org.openflow.protocol.OFMessage; @@ -55,17 +53,41 @@ class PriorityMessage { @Override public int hashCode() { - return HashCodeBuilder.reflectionHashCode(this); + final int prime = 31; + int result = 1; + result = prime * result + ((msg == null) ? 0 : msg.hashCode()); + result = prime * result + priority; + result = prime * result + (int) (seqNum ^ (seqNum >>> 32)); + result = prime * result + (syncReply ? 1231 : 1237); + return result; } @Override public boolean equals(Object obj) { - return EqualsBuilder.reflectionEquals(this, obj); + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + PriorityMessage other = (PriorityMessage) obj; + if (msg == null) { + if (other.msg != null) + return false; + } else if (!msg.equals(other.msg)) + return false; + if (priority != other.priority) + return false; + if (seqNum != other.seqNum) + return false; + if (syncReply != other.syncReply) + return false; + return true; } @Override public String toString() { - return "PriorityMessage[" + ReflectionToStringBuilder.toString(this) - + "]"; + return "PriorityMessage [msg=" + msg + ", priority=" + priority + + ", seqNum=" + seqNum + ", syncReply=" + syncReply + "]"; } } diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SecureMessageReadWriteService.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SecureMessageReadWriteService.java index 27a5cc6906..43a64814d8 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SecureMessageReadWriteService.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SecureMessageReadWriteService.java @@ -190,7 +190,7 @@ public class SecureMessageReadWriteService implements IMessageReadWrite { SelectionKey.OP_READ, this); } - logger.trace("Message sent: {}", msg.toString()); + logger.trace("Message sent: {}", msg); } } diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SwitchHandler.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SwitchHandler.java index 9a05c3f4f1..91606f4a41 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SwitchHandler.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SwitchHandler.java @@ -320,13 +320,13 @@ public class SwitchHandler implements ISwitch { } if (msgs == null) { - logger.debug("{} is down", toString()); + logger.debug("{} is down", this); // the connection is down, inform core reportSwitchStateChange(false); return; } for (OFMessage msg : msgs) { - logger.trace("Message received: {}", msg.toString()); + logger.trace("Message received: {}", msg); this.lastMsgReceivedTimeStamp = System.currentTimeMillis(); OFType type = msg.getType(); switch (type) { @@ -418,7 +418,7 @@ public class SwitchHandler implements ISwitch { // send a probe to see if the switch is still alive logger.debug( "Send idle probe (Echo Request) to {}", - toString()); + this); probeSent = true; OFMessage echo = factory .getMessage(OFType.ECHO_REQUEST); @@ -462,7 +462,9 @@ public class SwitchHandler implements ISwitch { || e instanceof InterruptedException || e instanceof SocketException || e instanceof IOException || e instanceof ClosedSelectorException) { - logger.debug("Caught exception {}", e.getMessage()); + if (logger.isDebugEnabled()) { + logger.debug("Caught exception {}", e.getMessage()); + } } else { logger.warn("Caught exception ", e); } @@ -729,7 +731,7 @@ public class SwitchHandler implements ISwitch { if (!transmitQ.isEmpty()) { PriorityMessage pmsg = transmitQ.poll(); msgReadWriteService.asyncSend(pmsg.msg); - logger.trace("Message sent: {}", pmsg.toString()); + logger.trace("Message sent: {}", pmsg); /* * If syncReply is set to true, wait for the response * back. @@ -883,8 +885,10 @@ public class SwitchHandler implements ISwitch { // if result is not null, this means the switch can't handle // this message // the result if OFError already - logger.debug("Send {} failed --> {}", msg.getType().toString(), - ((OFError) result).toString()); + if (logger.isDebugEnabled()) { + logger.debug("Send {} failed --> {}", msg.getType(), + ((OFError) result)); + } } return result; } catch (Exception e) { diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DataPacketMuxDemux.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DataPacketMuxDemux.java index a8ebcb068b..7614a4d128 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DataPacketMuxDemux.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DataPacketMuxDemux.java @@ -195,13 +195,15 @@ public class DataPacketMuxDemux implements IContainerListener, .get(GlobalConstants.DEFAULT.toString()); if (defaultOutService != null) { defaultOutService.receiveDataPacket(dataPacket); - logger.trace( - "Dispatched to apps a frame of size: {} on container: {}: {}", - new Object[] { + if (logger.isTraceEnabled()) { + logger.trace( + "Dispatched to apps a frame of size: {} on " + + "container: {}: {}", new Object[] { ofPacket.getPacketData().length, GlobalConstants.DEFAULT.toString(), HexEncode.bytesToHexString(dataPacket .getPacketData()) }); + } } // Now check the mapping between nodeConnector and // Container and later on optimally filter based on @@ -215,15 +217,15 @@ public class DataPacketMuxDemux implements IContainerListener, if (s != null) { // TODO add filtering on a per-flowSpec base s.receiveDataPacket(dataPacket); - logger.trace( - "Dispatched to apps a frame of size: {} on container: {}: {}", - new Object[] { + if (logger.isTraceEnabled()) { + logger.trace( + "Dispatched to apps a frame of size: {}" + + " on container: {}: {}", new Object[] { ofPacket.getPacketData().length, - GlobalConstants.DEFAULT.toString(), - HexEncode - .bytesToHexString(dataPacket - .getPacketData()) }); - + container, + HexEncode.bytesToHexString(dataPacket + .getPacketData()) }); + } } } } diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DiscoveryService.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DiscoveryService.java index afc5b8c825..0cbaf67d9e 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DiscoveryService.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/DiscoveryService.java @@ -294,11 +294,13 @@ public class DiscoveryService implements IInventoryShimExternalListener, } if (ethPkt.getPayload() instanceof LLDP) { NodeConnector dst = inPkt.getIncomingNodeConnector(); - if (!processDiscoveryPacket(dst, ethPkt)) { - /* Snoop the discovery pkt if not generated from us */ - snoopDiscoveryPacket(dst, ethPkt); + if (isEnabled(dst)) { + if (!processDiscoveryPacket(dst, ethPkt)) { + /* Snoop the discovery pkt if not generated from us */ + snoopDiscoveryPacket(dst, ethPkt); + } + return PacketResult.CONSUME; } - return PacketResult.CONSUME; } return PacketResult.IGNORED; } diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/OFStatisticsManager.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/OFStatisticsManager.java index 9dc8b3b6aa..d6100e3fdc 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/OFStatisticsManager.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/internal/OFStatisticsManager.java @@ -176,7 +176,7 @@ public class OFStatisticsManager implements IOFStatisticsManager, descriptionListeners = new HashSet(); configStatsPollIntervals(); - + // Initialize managed timers statisticsTimer = new Timer(); statisticsTimerTask = new TimerTask() { @@ -703,8 +703,10 @@ public class OFStatisticsManager implements IOFStatisticsManager, ByteBuffer data = ByteBuffer.allocate(length); stat.writeTo(data); data.rewind(); - log.trace("getV6ReplyStatistics: Buffer BYTES ARE {}", - HexString.toHexString(data.array())); + if (log.isTraceEnabled()) { + log.trace("getV6ReplyStatistics: Buffer BYTES ARE {}", + HexString.toHexString(data.array())); + } int vendor = data.getInt(); // first 4 bytes is vendor id. if (vendor != V6StatsRequest.NICIRA_VENDOR_ID) { diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6FlowMod.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6FlowMod.java index 888d2e63ed..53f4e1d5ad 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6FlowMod.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6FlowMod.java @@ -204,7 +204,7 @@ public class V6FlowMod extends OFVendor implements Cloneable { action.writeTo(data); } } - logger.trace("{}", this.toString()); + logger.trace("{}", this); } /** diff --git a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6Match.java b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6Match.java index 9921e826fc..2da6b9b008 100644 --- a/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6Match.java +++ b/opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/vendorextension/v6extension/V6Match.java @@ -674,7 +674,7 @@ public class V6Match extends OFMatch implements Cloneable { data.put(ipv6ext_dstport_msg); } } - logger.trace("{}", this.toString()); + logger.trace("{}", this); } private void readInPort(ByteBuffer data, int nxmLen, boolean hasMask) { diff --git a/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/DijkstraImplementation.java b/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/DijkstraImplementation.java index d878b231bc..26ae86243b 100644 --- a/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/DijkstraImplementation.java +++ b/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/DijkstraImplementation.java @@ -184,16 +184,14 @@ public class DijkstraImplementation implements IRouting, ITopologyManagerAware { try { path = mtp.getMaxThroughputPath(src, dst); } catch (IllegalArgumentException ie) { - log.debug("A vertex is yet not known between {} {}", - src.toString(), dst.toString()); + log.debug("A vertex is yet not known between {} {}", src, dst); return null; } Path res; try { res = new Path(path); } catch (ConstructionException e) { - log.debug("A vertex is yet not known between {} {}", - src.toString(), dst.toString()); + log.debug("A vertex is yet not known between {} {}", src, dst); return null; } return res; @@ -208,16 +206,14 @@ public class DijkstraImplementation implements IRouting, ITopologyManagerAware { try { path = spt.getPath(src, dst); } catch (IllegalArgumentException ie) { - log.debug("A vertex is yet not known between {} {}", - src.toString(), dst.toString()); + log.debug("A vertex is yet not known between {} {}", src, dst); return null; } Path res; try { res = new Path(path); } catch (ConstructionException e) { - log.debug("A vertex is yet not known between {} {}", - src.toString(), dst.toString()); + log.debug("A vertex is yet not known between {} {}", src, dst); return null; } return res; @@ -343,7 +339,9 @@ public class DijkstraImplementation implements IRouting, ITopologyManagerAware { if (props != null) props.remove(bw); - log.debug("edgeUpdate: {} bw: {}", e.toString(), bw.getValue()); + if (log.isDebugEnabled()) { + log.debug("edgeUpdate: {} bw: {}", e, bw.getValue()); + } Short baseBW = Short.valueOf((short) 0); boolean add = (type == UpdateType.ADDED) ? true : false; diff --git a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/LLDP.java b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/LLDP.java index 5e7a214f0e..562d03b7ab 100644 --- a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/LLDP.java +++ b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/LLDP.java @@ -171,8 +171,10 @@ public class LLDP extends Packet { int lldpOffset = bitOffset; // LLDP start int lldpSize = size; // LLDP size - logger.trace("LLDP: {} (offset {} bitsize {})", new Object[] { - HexEncode.bytesToHexString(data), lldpOffset, lldpSize }); + if (logger.isTraceEnabled()) { + logger.trace("LLDP: {} (offset {} bitsize {})", new Object[] { + HexEncode.bytesToHexString(data), lldpOffset, lldpSize }); + } /* * Deserialize the TLVs until we reach the end of the packet */ @@ -212,8 +214,10 @@ public class LLDP extends Packet { throw new PacketException(e.getMessage()); } - logger.trace("LLDP: serialized: {}", - HexEncode.bytesToHexString(serializedBytes)); + if (logger.isTraceEnabled()) { + logger.trace("LLDP: serialized: {}", + HexEncode.bytesToHexString(serializedBytes)); + } return serializedBytes; } diff --git a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/Packet.java b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/Packet.java index 95f0ca8617..446ec3e230 100644 --- a/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/Packet.java +++ b/opendaylight/sal/api/src/main/java/org/opendaylight/controller/sal/packet/Packet.java @@ -109,10 +109,12 @@ public abstract class Packet { * Store the raw read value, checks the payload type and set the * payloadClass accordingly */ - logger.trace("{}: {}: {} (offset {} bitsize {})", - new Object[] { this.getClass().getSimpleName(), hdrField, - HexEncode.bytesToHexString(hdrFieldBytes), - startOffset, numBits }); + if (logger.isTraceEnabled()) { + logger.trace("{}: {}: {} (offset {} bitsize {})", + new Object[] { this.getClass().getSimpleName(), hdrField, + HexEncode.bytesToHexString(hdrFieldBytes), + startOffset, numBits }); + } this.setHeaderField(hdrField, hdrFieldBytes); } @@ -189,8 +191,10 @@ public abstract class Packet { } postSerializeCustomOperation(headerBytes); - logger.trace("{}: {}", this.getClass().getSimpleName(), - HexEncode.bytesToHexString(headerBytes)); + if (logger.isTraceEnabled()) { + logger.trace("{}: {}", this.getClass().getSimpleName(), + HexEncode.bytesToHexString(headerBytes)); + } return headerBytes; } diff --git a/opendaylight/sal/api/src/test/java/org/opendaylight/controller/sal/core/PathTest.java b/opendaylight/sal/api/src/test/java/org/opendaylight/controller/sal/core/PathTest.java index 9058156b9e..656dd8ea5b 100644 --- a/opendaylight/sal/api/src/test/java/org/opendaylight/controller/sal/core/PathTest.java +++ b/opendaylight/sal/api/src/test/java/org/opendaylight/controller/sal/core/PathTest.java @@ -63,7 +63,8 @@ public class PathTest { Edge e2 = new Edge(c2, c3); Edge e3 = new Edge(c3, c4); Edge e4 = new Edge(c4, c5); - edges = new LinkedList(Arrays.asList(e0, e1, e2, e3, e4)); + // actually need a LinkedList because we're going to .remove() + edges = new LinkedList(Arrays.asList(e0, e1, e2, e3, e4)); } catch (ConstructionException e) { // Exception is NOT expected if raised test will fail Assert.assertTrue(false); @@ -130,7 +131,7 @@ public class PathTest { Edge e2 = new Edge(c2, c3); Edge e3 = new Edge(c3, c4); Edge e4 = new Edge(c4, c5); - edges1 = new LinkedList(Arrays.asList(e0, e1, e2, e3, e4)); + edges1 = Arrays.asList(e0, e1, e2, e3, e4); } catch (ConstructionException e) { // Exception is NOT expected if raised test will fail Assert.assertTrue(false); @@ -168,7 +169,7 @@ public class PathTest { Edge e2 = new Edge(c2, c3); Edge e3 = new Edge(c3, c4); Edge e4 = new Edge(c4, c5); - edges2 = new LinkedList(Arrays.asList(e0, e1, e2, e3, e4)); + edges2 = Arrays.asList(e0, e1, e2, e3, e4); } catch (ConstructionException e) { // Exception is NOT expected if raised test will fail Assert.assertTrue(false); @@ -206,7 +207,7 @@ public class PathTest { Edge e2 = new Edge(c2, c3); Edge e3 = new Edge(c3, c4); Edge e4 = new Edge(c4, c5); - edges3 = new LinkedList(Arrays.asList(e0, e1, e2, e3, e4)); + edges3 = Arrays.asList(e0, e1, e2, e3, e4); } catch (ConstructionException e) { // Exception is NOT expected if raised test will fail Assert.assertTrue(false); @@ -257,7 +258,7 @@ public class PathTest { Edge e0 = new Edge(c0, c1); - Path path = new Path(new LinkedList(Arrays.asList(e0))); + Path path = new Path(Arrays.asList(e0)); } catch (ConstructionException e) { // Exception is NOT expected if raised test will fail Assert.assertTrue(false); @@ -299,7 +300,7 @@ public class PathTest { Edge e2 = new Edge(c2, c3); Edge e3 = new Edge(c3, c4); Edge e4 = new Edge(c4, c5); - List edges = new LinkedList(Arrays.asList(e0, e1, e2, e3, e4)); + List edges = Arrays.asList(e0, e1, e2, e3, e4); Path path = new Path(edges); // Test start node @@ -325,7 +326,7 @@ public class PathTest { (short) 0x1), n1); Edge e0 = new Edge(c0, c1); - List edges = new LinkedList(Arrays.asList(e0)); + List edges = Arrays.asList(e0); Path path = new Path(edges); // Test start node diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesTest.java index cf9ecdd937..92d9359130 100644 --- a/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/binding-generator-impl/src/test/java/org/opendaylight/controller/sal/binding/generator/impl/GeneratedTypesTest.java @@ -25,7 +25,7 @@ import org.opendaylight.controller.sal.binding.model.api.Type; import org.opendaylight.controller.yang.model.api.Module; import org.opendaylight.controller.yang.model.api.SchemaContext; import org.opendaylight.controller.yang.model.parser.api.YangModelParser; -import org.opendaylight.controller.yang.model.parser.impl.YangParserImpl; +import org.opendaylight.controller.yang.parser.impl.YangParserImpl; public class GeneratedTypesTest { diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GeneratorJavaFileTest.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GeneratorJavaFileTest.java index 0e2d9e4c40..d7fa329c89 100644 --- a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GeneratorJavaFileTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/test/java/org/opendaylight/controller/sal/java/api/generator/test/GeneratorJavaFileTest.java @@ -36,7 +36,7 @@ import org.opendaylight.controller.sal.java.api.generator.GeneratorJavaFile; import org.opendaylight.controller.sal.java.api.generator.InterfaceGenerator; import org.opendaylight.controller.yang.model.api.Module; import org.opendaylight.controller.yang.model.api.SchemaContext; -import org.opendaylight.controller.yang.model.parser.impl.YangParserImpl; +import org.opendaylight.controller.yang.parser.impl.YangParserImpl; public class GeneratorJavaFileTest { private static final String FS = File.separator; diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/CombineTest.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/CombineTest.java deleted file mode 100644 index 7171ee92b0..0000000000 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/CombineTest.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) 2013 Cisco Systems, Inc. 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 - */ -package org.opendaylight.controller.yang2sources.plugin.it; - -import org.apache.maven.it.VerificationException; -import org.apache.maven.it.Verifier; -import org.junit.Test; - -public class CombineTest { - - @Test - public void testCorrect() throws VerificationException { - Verifier v = YangToSourcesPluginTest.setUp("Correct_combined/", false); - YangToResourcesPluginTest.verifyCorrectLog(v); - YangToSourcesPluginTest.verifyCorrectLog(v); - } - -} diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/YangToResourcesPluginTest.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/YangToResourcesPluginTest.java deleted file mode 100644 index f7aa4f7c4e..0000000000 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/YangToResourcesPluginTest.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2013 Cisco Systems, Inc. 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 - */ -package org.opendaylight.controller.yang2sources.plugin.it; - -import org.apache.maven.it.VerificationException; -import org.apache.maven.it.Verifier; -import org.junit.Test; - -public class YangToResourcesPluginTest { - - @Test - public void testCorrect() throws VerificationException { - Verifier v = YangToSourcesPluginTest.setUp("Correct_resources/", false); - verifyCorrectLog(v); - } - - static void verifyCorrectLog(Verifier v) throws VerificationException { - v.verifyErrorFreeLog(); - v.verifyTextInLog("[INFO] yang-to-resources: Resource provider instantiated from org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl"); - v.verifyTextInLog("[INFO] yang-to-resources: Resource provider org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl call successful"); - } - - @Test - public void testNoGenerators() throws VerificationException { - Verifier v = YangToSourcesPluginTest.setUp("NoGenerators_resources/", - false); - v.verifyErrorFreeLog(); - v.verifyTextInLog("[WARNING] yang-to-resources: No resource provider classes provided"); - } - - @Test - public void testUnknownGenerator() throws VerificationException { - Verifier v = YangToSourcesPluginTest.setUp( - "UnknownGenerator_resources/", true); - v.verifyTextInLog("[ERROR] yang-to-resources: Unable to provide resources with unknown resource provider"); - v.verifyTextInLog("java.lang.ClassNotFoundException: unknown"); - v.verifyTextInLog("[INFO] yang-to-resources: Resource provider instantiated from org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl"); - v.verifyTextInLog("[INFO] yang-to-resources: Resource provider org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl call successful"); - v.verifyTextInLog("[ERROR] yang-to-resources: One or more code resource provider failed, including failed list(resourceProviderClass=exception) {unknown=java.lang.ClassNotFoundException}"); - } - -} diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/YangToSourcesPluginTest.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/YangToSourcesPluginTest.java index 4b41cfd944..75d6ee5d7d 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/YangToSourcesPluginTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/java/org/opendaylight/controller/yang2sources/plugin/it/YangToSourcesPluginTest.java @@ -8,7 +8,7 @@ package org.opendaylight.controller.yang2sources.plugin.it; import static org.junit.Assert.*; -import static org.junit.matchers.JUnitMatchers.*; +import static org.junit.matchers.JUnitMatchers.containsString; import java.io.File; @@ -38,6 +38,7 @@ public class YangToSourcesPluginTest { public void testCorrect() throws VerificationException { Verifier v = setUp("Correct/", false); verifyCorrectLog(v); + } static void verifyCorrectLog(Verifier v) throws VerificationException { @@ -45,6 +46,8 @@ public class YangToSourcesPluginTest { v.verifyTextInLog("[INFO] yang-to-sources: yang files parsed from"); v.verifyTextInLog("[INFO] yang-to-sources: Code generator instantiated from org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl"); v.verifyTextInLog("[INFO] yang-to-sources: Sources generated by org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl: null"); + v.verifyTextInLog("[INFO] yang-to-sources: Resource provider instantiated from org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl"); + v.verifyTextInLog("[INFO] yang-to-sources: Resource provider org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl call successful"); } @Test @@ -83,8 +86,34 @@ public class YangToSourcesPluginTest { + project).getAbsolutePath()); if (ignoreF) verifier.addCliOption("-fn"); - verifier.executeGoal("generate-resources"); + verifier.executeGoal("generate-sources"); return verifier; } + @Test + public void testNoGeneratorsResources() throws VerificationException { + Verifier v = YangToSourcesPluginTest.setUp("NoGenerators_resources/", + false); + v.verifyErrorFreeLog(); + v.verifyTextInLog("[WARNING] yang-to-sources: No resource provider classes provided"); + } + + @Test + public void testUnknownGeneratorResources() throws VerificationException { + Verifier v = YangToSourcesPluginTest.setUp( + "UnknownGenerator_resources/", true); + v.verifyTextInLog("[ERROR] yang-to-sources: Unable to provide resources with unknown resource provider"); + v.verifyTextInLog("java.lang.ClassNotFoundException: unknown"); + v.verifyTextInLog("[INFO] yang-to-sources: Resource provider instantiated from org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl"); + v.verifyTextInLog("[INFO] yang-to-sources: Resource provider org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl call successful"); + v.verifyTextInLog("[ERROR] yang-to-sources: One or more code resource provider failed, including failed list(resourceProviderClass=exception) {unknown=java.lang.ClassNotFoundException}"); + } + + @Test + public void testNoOutputDir() throws VerificationException { + Verifier v = YangToSourcesPluginTest.setUp("NoOutputDir/", + false); + verifyCorrectLog(v); + } + } diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct/pom.xml index 6a7c3f95b7..91e90c5b3d 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct/pom.xml @@ -1,49 +1,67 @@ - 4.0.0 - - binding-generator - org.opendaylight.controller - 0.5-SNAPSHOT - - test + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + + binding-generator + org.opendaylight.controller + 0.5-SNAPSHOT + + test - - - - org.opendaylight.controller - yang-maven-plugin - 0.5-SNAPSHOT - - - - generate-sources - - - ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model - - - - org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl - - - outDir/ - - - - - - + + + org.opendaylight.controller + yang-maven-plugin-spi + 0.5-SNAPSHOT + + - - - org.opendaylight.controller - yang-maven-plugin-spi - 0.5-SNAPSHOT - test-jar - - - - - - \ No newline at end of file + + + + org.opendaylight.controller + yang-maven-plugin + 0.5-SNAPSHOT + + + + generate-sources + + + ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model + + + + org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl + + + outDir/ + + + + + + + org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl + + + outDir/ + + + + + + + + + + org.opendaylight.controller + yang-maven-plugin-spi + 0.5-SNAPSHOT + test-jar + + + + + + diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct_resources/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct_resources/pom.xml index 0e0c96a48c..8ae7730578 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct_resources/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct_resources/pom.xml @@ -17,7 +17,7 @@ - generate-resources + generate-sources ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct_combined/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Generator/pom.xml similarity index 93% rename from opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct_combined/pom.xml rename to opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Generator/pom.xml index fe67c78152..8b11eace35 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Correct_combined/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/Generator/pom.xml @@ -18,7 +18,6 @@ generate-sources - generate-resources ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model @@ -28,7 +27,7 @@ org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl - outDir/src + outDir/ @@ -38,7 +37,7 @@ org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl - outDir/resources + outDir/ diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators/pom.xml index f19d84886e..cf158cc7b0 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators/pom.xml @@ -23,9 +23,27 @@ ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model + + + + org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl + + + outDir/ + + + + + + org.opendaylight.controller + yang-maven-plugin-spi + 0.5-SNAPSHOT + test-jar + + diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators_resources/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators_resources/pom.xml index 38028b84e9..67c0984ae3 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators_resources/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoGenerators_resources/pom.xml @@ -17,15 +17,33 @@ - generate-resources + generate-sources ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model + + + + org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl + + + outDir/ + + + + + + org.opendaylight.controller + yang-maven-plugin-spi + 0.5-SNAPSHOT + test-jar + + diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoOutputDir/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoOutputDir/pom.xml new file mode 100644 index 0000000000..adca0fae8f --- /dev/null +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoOutputDir/pom.xml @@ -0,0 +1,53 @@ + + 4.0.0 + + binding-generator + org.opendaylight.controller + 0.5-SNAPSHOT + + test + + + + + org.opendaylight.controller + yang-maven-plugin + 0.5-SNAPSHOT + + + + generate-sources + + + ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model + + + + org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl + + + + + + + org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl + + + + + + + + + + org.opendaylight.controller + yang-maven-plugin-spi + 0.5-SNAPSHOT + test-jar + + + + + + \ No newline at end of file diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoYangFiles/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoYangFiles/pom.xml index 2308da0fed..70aa82aae5 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoYangFiles/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/NoYangFiles/pom.xml @@ -31,6 +31,16 @@ + + + + org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl + + + outDir/ + + + diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator/pom.xml index 2101b8471b..da7554e044 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator/pom.xml @@ -39,6 +39,16 @@ + + + + org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl + + + outDir/ + + + diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator_resources/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator_resources/pom.xml index 8ee0606631..f5eddd95c0 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator_resources/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/UnknownGenerator_resources/pom.xml @@ -17,10 +17,20 @@ - generate-resources + generate-sources ${basedir}/../../../../../yang-model-parser-impl/src/test/resources/model + + + + org.opendaylight.controller.yang2sources.spi.CodeGeneratorTestImpl + + + outDir/ + + + diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/YangRootNotExist/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/YangRootNotExist/pom.xml index 3aeb2e9535..6208231c6f 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/YangRootNotExist/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin-it/src/test/resources/YangRootNotExist/pom.xml @@ -31,6 +31,16 @@ + + + + org.opendaylight.controller.yang2sources.spi.ResourceProviderTestImpl + + + outDir/ + + + diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/pom.xml b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/pom.xml index e82c737351..d542e6d93f 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/pom.xml +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/pom.xml @@ -36,6 +36,11 @@ 3.2 provided + + org.apache.maven + maven-artifact + 2.0 + ${project.groupId} diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/ConfigArg.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/ConfigArg.java index 85f2d8905d..217c6f5b86 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/ConfigArg.java +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/ConfigArg.java @@ -40,6 +40,10 @@ public abstract class ConfigArg { public ResourceProviderArg() { } + public ResourceProviderArg(String resourceProviderClass) { + this(resourceProviderClass, new File("outDir/")); + } + public ResourceProviderArg(String resourceProviderClass, File outputBaseDir) { super(outputBaseDir); @@ -51,9 +55,6 @@ public abstract class ConfigArg { Preconditions .checkNotNull(resourceProviderClass, "resourceProviderClass for ResourceProvider cannot be null"); - Preconditions.checkNotNull(outputBaseDir, - "outputBaseDir for ResourceProvider cannot be null, " - + resourceProviderClass); } public String getResourceProviderClass() { @@ -70,6 +71,10 @@ public abstract class ConfigArg { public CodeGeneratorArg() { } + public CodeGeneratorArg(String codeGeneratorClass) { + this(codeGeneratorClass, new File("outDir/")); + } + public CodeGeneratorArg(String codeGeneratorClass, File outputBaseDir) { super(outputBaseDir); this.codeGeneratorClass = codeGeneratorClass; @@ -79,9 +84,6 @@ public abstract class ConfigArg { public void check() { Preconditions.checkNotNull(codeGeneratorClass, "codeGeneratorClass for CodeGenerator cannot be null"); - Preconditions.checkNotNull(outputBaseDir, - "outputBaseDir for CodeGenerator cannot be null, " - + codeGeneratorClass); } public String getCodeGeneratorClass() { diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/Util.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/Util.java index 98a5d8531b..5676530afe 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/Util.java +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/Util.java @@ -8,17 +8,29 @@ package org.opendaylight.controller.yang2sources.plugin; import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; import java.util.Collection; +import java.util.Enumeration; +import java.util.List; import java.util.Map; +import java.util.zip.ZipEntry; +import java.util.zip.ZipException; +import java.util.zip.ZipFile; import org.apache.commons.io.FileUtils; +import org.apache.maven.artifact.DependencyResolutionRequiredException; +import org.apache.maven.project.MavenProject; import com.google.common.base.Function; import com.google.common.collect.Collections2; +import com.google.common.collect.Lists; import com.google.common.collect.Maps; final class Util { - static final String YANG_SUFFIX = "yang"; // Cache for listed directories and found yang files. Typically yang files @@ -33,11 +45,15 @@ final class Util { * List files recursively and return as array of String paths. Use cache of * size 1. */ - static Collection listFiles(String rootDir) { - + static Collection listFiles(String rootDir) throws FileNotFoundException { if (cache.get(rootDir) != null) return cache.get(rootDir); + File file = new File(rootDir); + if(!file.exists()) { + throw new FileNotFoundException(); + } + Collection yangFiles = FileUtils.listFiles(new File(rootDir), new String[] { YANG_SUFFIX }, true); @@ -45,7 +61,18 @@ final class Util { return yangFiles; } - static String[] listFilesAsArrayOfPaths(String rootDir) { + static Collection listFilesAsStream(String rootDir) throws FileNotFoundException { + Collection is = new ArrayList(); + + Collection files = listFiles(rootDir); + for(File f : files) { + is.add(new FileInputStream(f)); + } + + return is; + } + + static String[] listFilesAsArrayOfPaths(String rootDir) throws FileNotFoundException { String[] filesArray = new String[] {}; Collection yangFiles = listFiles(rootDir); @@ -99,4 +126,56 @@ final class Util { String innerMessage = String.format(message, args); return String.format("%s %s", logPrefix, innerMessage); } + + public static List getClassPath(MavenProject project) + throws DependencyResolutionRequiredException { + List dependencies = Lists.newArrayList(); + try { + for (Object element : project.getCompileClasspathElements()) { + File asFile = new File((String) element); + if (isJar(asFile)) { + dependencies.add(asFile); + } + } + } catch (DependencyResolutionRequiredException e) { + throw e; + } + return dependencies; + } + + private static final String JAR_SUFFIX = ".jar"; + + private static boolean isJar(File element) { + return (element.isFile() && element.getName().endsWith(JAR_SUFFIX)) ? true + : false; + } + + public static Collection getFilesFromClasspath( + List jarsOnClasspath, List classPathFilter) + throws ZipException, IOException { + List yangs = Lists.newArrayList(); + + for (File file : jarsOnClasspath) { + ZipFile zip = new ZipFile(file); + Enumeration entries = zip.entries(); + while (entries.hasMoreElements()) { + ZipEntry entry = entries.nextElement(); + if (entry.getName().endsWith(YANG_SUFFIX)) { + InputStream stream = zip.getInputStream(entry); + } + } + } + + return yangs; + } + + public static boolean acceptedFilter(String name, List filter) { + for(String f : filter) { + if(name.endsWith(f)) { + return true; + } + } + return false; + } + } diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/YangToResourcesMojo.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/YangToResourcesMojo.java deleted file mode 100644 index b4490499cf..0000000000 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/YangToResourcesMojo.java +++ /dev/null @@ -1,137 +0,0 @@ -/* - * Copyright (c) 2013 Cisco Systems, Inc. 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 - */ -package org.opendaylight.controller.yang2sources.plugin; - -import java.io.File; -import java.util.Collection; -import java.util.Map; - -import org.apache.maven.plugin.AbstractMojo; -import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.plugin.MojoFailureException; -import org.apache.maven.plugins.annotations.LifecyclePhase; -import org.apache.maven.plugins.annotations.Mojo; -import org.apache.maven.plugins.annotations.Parameter; -import org.opendaylight.controller.yang2sources.plugin.ConfigArg.ResourceProviderArg; -import org.opendaylight.controller.yang2sources.spi.ResourceGenerator; - -import com.google.common.annotations.VisibleForTesting; -import com.google.common.collect.Maps; - -/** - * Generate resources from yang files using user provided set of - * {@link ResourceGenerator}s. Can be used to copy yang files that served as - * blueprint for code generation into resources directory. Steps of this - * process: - *
    - *
  1. List yang files from {@link #yangFilesRootDir} (If this goal is in the - * same execution as generate-sources, the same cached list will be used and the - * root folder will not be searched for yang files twice)
  2. - *
  3. For each {@link ResourceGenerator} from {@link #resourceProviders}:
  4. - *
      - *
    1. Instantiate using default constructor
    2. - *
    3. Call {@link ResourceGenerator#generateResourceFiles(Collection, File)}
    4. - *
    - *
- */ -@Mojo(name = "generate-resources", defaultPhase = LifecyclePhase.GENERATE_RESOURCES) -public final class YangToResourcesMojo extends AbstractMojo { - - private static final String LOG_PREFIX = "yang-to-resources:"; - - /** - * Classes implementing {@link ResourceGenerator} interface. An instance - * will be created out of every class using default constructor. Method - * {@link ResourceGenerator#generateResourceFiles(Collection, File)} will be - * called on every instance. - */ - @Parameter(required = true) - private ResourceProviderArg[] resourceProviders; - - /** - * Source directory that will be recursively searched for yang files (ending - * with .yang suffix). - */ - @Parameter(required = true) - private String yangFilesRootDir; - - @VisibleForTesting - YangToResourcesMojo(ResourceProviderArg[] resourceProviderArgs, - String yangFilesRootDir) { - super(); - this.resourceProviders = resourceProviderArgs; - this.yangFilesRootDir = yangFilesRootDir; - } - - public YangToResourcesMojo() { - super(); - } - - @Override - public void execute() throws MojoExecutionException, MojoFailureException { - - if (resourceProviders.length == 0) { - getLog().warn( - Util.message("No resource provider classes provided", - LOG_PREFIX)); - return; - } - - Map thrown = Maps.newHashMap(); - Collection yangFiles = Util.listFiles(yangFilesRootDir); - - for (ResourceProviderArg resourceProvider : resourceProviders) { - try { - - provideResourcesWithOneProvider(yangFiles, resourceProvider); - - } catch (Exception e) { - // try other generators, exception will be thrown after - getLog().error( - Util.message( - "Unable to provide resources with %s resource provider", - LOG_PREFIX, - resourceProvider.getResourceProviderClass()), e); - thrown.put(resourceProvider.getResourceProviderClass(), e - .getClass().getCanonicalName()); - } - } - - if (!thrown.isEmpty()) { - String message = Util - .message( - "One or more code resource provider failed, including failed list(resourceProviderClass=exception) %s", - LOG_PREFIX, thrown.toString()); - getLog().error(message); - throw new MojoFailureException(message); - } - } - - /** - * Instantiate provider from class and call required method - */ - private void provideResourcesWithOneProvider(Collection yangFiles, - ResourceProviderArg resourceProvider) - throws ClassNotFoundException, InstantiationException, - IllegalAccessException { - - resourceProvider.check(); - - ResourceGenerator g = Util.getInstance( - resourceProvider.getResourceProviderClass(), - ResourceGenerator.class); - getLog().info( - Util.message("Resource provider instantiated from %s", - LOG_PREFIX, resourceProvider.getResourceProviderClass())); - - g.generateResourceFiles(yangFiles, resourceProvider.getOutputBaseDir()); - getLog().info( - Util.message("Resource provider %s call successful", - LOG_PREFIX, resourceProvider.getResourceProviderClass())); - } -} diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/YangToSourcesMojo.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/YangToSourcesMojo.java index 05d9c0cd2c..2621985716 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/YangToSourcesMojo.java +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/main/java/org/opendaylight/controller/yang2sources/plugin/YangToSourcesMojo.java @@ -7,13 +7,24 @@ */ package org.opendaylight.controller.yang2sources.plugin; +import java.io.Closeable; import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; import java.io.IOException; +import java.io.InputStream; import java.util.ArrayList; import java.util.Collection; +import java.util.Enumeration; +import java.util.List; import java.util.Map; import java.util.Set; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; +import org.apache.commons.io.IOUtils; +import org.apache.maven.model.Resource; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; @@ -25,11 +36,14 @@ import org.apache.maven.project.MavenProject; import org.opendaylight.controller.yang.model.api.Module; import org.opendaylight.controller.yang.model.api.SchemaContext; import org.opendaylight.controller.yang.model.parser.api.YangModelParser; -import org.opendaylight.controller.yang.model.parser.impl.YangParserImpl; +import org.opendaylight.controller.yang.parser.impl.YangParserImpl; import org.opendaylight.controller.yang2sources.plugin.ConfigArg.CodeGeneratorArg; +import org.opendaylight.controller.yang2sources.plugin.ConfigArg.ResourceProviderArg; import org.opendaylight.controller.yang2sources.spi.CodeGenerator; +import org.opendaylight.controller.yang2sources.spi.ResourceGenerator; import com.google.common.annotations.VisibleForTesting; +import com.google.common.collect.Lists; import com.google.common.collect.Maps; /** @@ -47,8 +61,9 @@ import com.google.common.collect.Maps; */ @Mojo(name = "generate-sources", defaultPhase = LifecyclePhase.GENERATE_SOURCES, requiresDependencyResolution = ResolutionScope.COMPILE, requiresProject = true) public final class YangToSourcesMojo extends AbstractMojo { - private static final String LOG_PREFIX = "yang-to-sources:"; + private static final String INPUT_RESOURCE_DIR = "META-INF/yangs/"; + private static final String OUTPUT_RESOURCE_DIR = "/target/external-resources/"; /** * Classes implementing {@link CodeGenerator} interface. An instance will be @@ -66,15 +81,26 @@ public final class YangToSourcesMojo extends AbstractMojo { @Parameter(required = true) private String yangFilesRootDir; + /** + * Classes implementing {@link ResourceGenerator} interface. An instance + * will be created out of every class using default constructor. Method + * {@link ResourceGenerator#generateResourceFiles(Collection, File)} will be + * called on every instance. + */ + @Parameter(required = true) + private ResourceProviderArg[] resourceProviders; + @Parameter(property = "project", required = true, readonly = true) protected MavenProject project; private transient final YangModelParser parser; @VisibleForTesting - YangToSourcesMojo(CodeGeneratorArg[] codeGeneratorArgs, - YangModelParser parser, String yangFilesRootDir) { + YangToSourcesMojo(ResourceProviderArg[] resourceProviderArgs, + CodeGeneratorArg[] codeGeneratorArgs, YangModelParser parser, + String yangFilesRootDir) { super(); + this.resourceProviders = resourceProviderArgs; this.codeGenerators = codeGeneratorArgs; this.yangFilesRootDir = yangFilesRootDir; this.parser = parser; @@ -89,6 +115,9 @@ public final class YangToSourcesMojo extends AbstractMojo { public void execute() throws MojoExecutionException, MojoFailureException { SchemaContext context = processYang(); generateSources(context); + generateResources(); + + closeResources(); } /** @@ -96,7 +125,9 @@ public final class YangToSourcesMojo extends AbstractMojo { */ private SchemaContext processYang() throws MojoExecutionException { try { - Collection yangFiles = Util.listFiles(yangFilesRootDir); + Collection yangFiles = Util + .listFilesAsStream(yangFilesRootDir); + yangFiles.addAll(getFilesFromDependenciesAsStream()); if (yangFiles.isEmpty()) { getLog().warn( @@ -106,7 +137,8 @@ public final class YangToSourcesMojo extends AbstractMojo { } Set parsedYang = parser - .parseYangModels(new ArrayList(yangFiles)); + .parseYangModelsFromStreams(new ArrayList( + yangFiles)); SchemaContext resolveSchemaContext = parser .resolveSchemaContext(parsedYang); getLog().info( @@ -123,6 +155,158 @@ public final class YangToSourcesMojo extends AbstractMojo { } } + private void generateResources() throws MojoExecutionException, + MojoFailureException { + if (resourceProviders.length == 0) { + getLog().warn( + Util.message("No resource provider classes provided", + LOG_PREFIX)); + return; + } + + Resource res = new Resource(); + String baseDirName = project.getBasedir().getAbsolutePath(); + res.setDirectory(baseDirName + OUTPUT_RESOURCE_DIR); + res.setTargetPath(INPUT_RESOURCE_DIR); + project.addResource(res); + + Map thrown = Maps.newHashMap(); + + Collection yangFiles = new ArrayList(); + + // load files from yang root + yangFiles.addAll(getFilesFromYangRoot()); + + // load files from dependencies + yangFiles.addAll(getFilesFromDependencies()); + + + for (ResourceProviderArg resourceProvider : resourceProviders) { + try { + provideResourcesWithOneProvider(yangFiles, resourceProvider); + } catch (Exception e) { + // try other generators, exception will be thrown after + getLog().error( + Util.message( + "Unable to provide resources with %s resource provider", + LOG_PREFIX, + resourceProvider.getResourceProviderClass()), e); + thrown.put(resourceProvider.getResourceProviderClass(), e + .getClass().getCanonicalName()); + } + } + + if (!thrown.isEmpty()) { + String message = Util + .message( + "One or more code resource provider failed, including failed list(resourceProviderClass=exception) %s", + LOG_PREFIX, thrown.toString()); + getLog().error(message); + throw new MojoFailureException(message); + } + } + + private Collection getFilesFromYangRoot() { + Collection yangFilesLoaded = null; + + File rootDir = new File(yangFilesRootDir); + try { + if(!rootDir.isAbsolute()) { + yangFilesLoaded = Util.listFiles(project.getBasedir().getAbsolutePath() + yangFilesRootDir); + } else { + yangFilesLoaded = Util.listFiles(yangFilesRootDir); + } + + } catch(FileNotFoundException e) { + getLog().warn("Directory '" + yangFilesRootDir + "' does not exists."); + yangFilesLoaded = new ArrayList(); + } + Collection yangFiles = new ArrayList(yangFilesLoaded); + + try { + for(File yangFile : yangFilesLoaded) { + InputStream is = new FileInputStream(yangFile); + yangFiles.add(createFileFromStream(is, project.getBasedir().getAbsolutePath() + OUTPUT_RESOURCE_DIR + yangFile.getName())); + resources.add(is); + } + } catch(IOException e) { + getLog().warn("Exception while loading yang files.", e); + } + return yangFiles; + } + + private Collection getFilesFromDependencies() { + Collection yangFiles = new ArrayList(); + + try { + List filesOnCp = Util.getClassPath(project); + List filter = Lists.newArrayList(".yang"); + for (File file : filesOnCp) { + ZipFile zip = new ZipFile(file); + Enumeration entries = zip.entries(); + + while (entries.hasMoreElements()) { + ZipEntry entry = entries.nextElement(); + String entryName = entry.getName(); + if (entryName.startsWith(INPUT_RESOURCE_DIR)) { + if (entry.isDirectory()) { + continue; + } + if (!Util.acceptedFilter(entryName, filter)) { + continue; + } + InputStream entryStream = zip.getInputStream(entry); + String newEntryName = entryName.substring(INPUT_RESOURCE_DIR.length()); + File f = createFileFromStream(entryStream, project.getBasedir().getAbsolutePath() + OUTPUT_RESOURCE_DIR + newEntryName); + yangFiles.add(f); + + resources.add(entryStream); + } + } + + resources.add(zip); + } + } catch (Exception e) { + getLog().warn("Exception while loading external yang files.", e); + } + return yangFiles; + } + + private File createFileFromStream(InputStream is, String absoluteName) throws IOException { + File f = new File(absoluteName); + if(!f.exists()) { + f.getParentFile().mkdirs(); + } + f.createNewFile(); + + FileOutputStream fos = new FileOutputStream(f); + IOUtils.copy(is, fos); + return f; + } + + /** + * Instantiate provider from class and call required method + */ + private void provideResourcesWithOneProvider(Collection yangFiles, + ResourceProviderArg resourceProvider) + throws ClassNotFoundException, InstantiationException, + IllegalAccessException { + + resourceProvider.check(); + + ResourceGenerator g = Util.getInstance( + resourceProvider.getResourceProviderClass(), + ResourceGenerator.class); + getLog().info( + Util.message("Resource provider instantiated from %s", + LOG_PREFIX, resourceProvider.getResourceProviderClass())); + + g.generateResourceFiles(yangFiles, resourceProvider.getOutputBaseDir()); + getLog().info( + Util.message("Resource provider %s call successful", + LOG_PREFIX, resourceProvider.getResourceProviderClass())); + } + /** * Call generate on every generator from plugin configuration */ @@ -135,12 +319,9 @@ public final class YangToSourcesMojo extends AbstractMojo { } Map thrown = Maps.newHashMap(); - for (CodeGeneratorArg codeGenerator : codeGenerators) { try { - generateSourcesWithOneGenerator(context, codeGenerator); - } catch (Exception e) { // try other generators, exception will be thrown after getLog().error( @@ -188,4 +369,62 @@ public final class YangToSourcesMojo extends AbstractMojo { codeGeneratorCfg.getCodeGeneratorClass(), generated)); } + /** + * Collection of resources which should be closed after use. + */ + private final List resources = new ArrayList(); + + /** + * Search for yang files in dependent projects. + * + * @return files found as List of InputStream + */ + private List getFilesFromDependenciesAsStream() { + final List yangsFromDependencies = new ArrayList(); + try { + List filesOnCp = Util.getClassPath(project); + + List filter = Lists.newArrayList(".yang"); + for (File file : filesOnCp) { + ZipFile zip = new ZipFile(file); + Enumeration entries = zip.entries(); + while (entries.hasMoreElements()) { + ZipEntry entry = entries.nextElement(); + String entryName = entry.getName(); + + if(entryName.startsWith(INPUT_RESOURCE_DIR)) { + if(entry.isDirectory()) { + continue; + } + if (!Util.acceptedFilter(entryName, filter)) { + continue; + } + + InputStream entryStream = zip.getInputStream(entry); + yangsFromDependencies.add(entryStream); + resources.add(entryStream); + } + + } + resources.add(zip); + } + } catch (Exception e) { + getLog().warn("Exception while searching yangs in dependencies", e); + } + return yangsFromDependencies; + } + + /** + * Internal utility method for closing open resources. + */ + private void closeResources() { + for (Closeable resource : resources) { + try { + resource.close(); + } catch (IOException e) { + getLog().warn("Failed to close resources: "+ resource, e); + } + } + } + } diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/GenerateResourcesTest.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/GenerateResourcesTest.java deleted file mode 100644 index a23e3b5a90..0000000000 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/GenerateResourcesTest.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright (c) 2013 Cisco Systems, Inc. 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 - */ -package org.opendaylight.controller.yang2sources.plugin; - -import static org.hamcrest.core.Is.*; -import static org.junit.Assert.*; - -import java.io.File; -import java.util.Collection; - -import org.junit.Before; -import org.junit.Test; -import org.opendaylight.controller.yang2sources.plugin.ConfigArg.ResourceProviderArg; -import org.opendaylight.controller.yang2sources.spi.ResourceGenerator; - -public class GenerateResourcesTest { - - private String yang; - private YangToResourcesMojo mojo; - private File outDir; - - @Before - public void setUp() { - yang = new File(getClass().getResource("/mock.yang").getFile()) - .getParent(); - outDir = new File("outputDir"); - mojo = new YangToResourcesMojo( - new ResourceProviderArg[] { - new ResourceProviderArg(ProviderMock.class.getName(), - outDir), - new ResourceProviderArg(ProviderMock2.class.getName(), - outDir) }, yang); - } - - @Test - public void test() throws Exception { - mojo.execute(); - assertThat(ProviderMock.called, is(1)); - assertThat(ProviderMock2.called, is(1)); - assertThat(ProviderMock2.baseDir, is(outDir)); - assertThat(ProviderMock.baseDir, is(outDir)); - } - - public static class ProviderMock implements ResourceGenerator { - - private static int called = 0; - private static File baseDir; - - @Override - public void generateResourceFiles(Collection resources, - File outputDir) { - called++; - baseDir = outputDir; - } - } - - public static class ProviderMock2 implements ResourceGenerator { - - private static int called = 0; - private static File baseDir; - - @Override - public void generateResourceFiles(Collection resources, - File outputDir) { - called++; - baseDir = outputDir; - } - } - -} diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/GenerateSourcesTest.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/GenerateSourcesTest.java index db703c2d0f..6961fa84ec 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/GenerateSourcesTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/GenerateSourcesTest.java @@ -7,25 +7,29 @@ */ package org.opendaylight.controller.yang2sources.plugin; -import static org.hamcrest.core.Is.*; -import static org.junit.Assert.*; -import static org.mockito.Matchers.*; +import static org.hamcrest.core.Is.is; +import static org.junit.Assert.assertThat; +import static org.mockito.Matchers.anyListOf; import static org.mockito.Mockito.*; import java.io.File; import java.util.Collection; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.opendaylight.controller.yang.model.api.SchemaContext; import org.opendaylight.controller.yang.model.parser.api.YangModelParser; import org.opendaylight.controller.yang2sources.plugin.ConfigArg.CodeGeneratorArg; +import org.opendaylight.controller.yang2sources.plugin.ConfigArg.ResourceProviderArg; import org.opendaylight.controller.yang2sources.spi.CodeGenerator; +import org.opendaylight.controller.yang2sources.spi.ResourceGenerator; import com.google.common.collect.Lists; +@Ignore public class GenerateSourcesTest { @Mock @@ -42,6 +46,11 @@ public class GenerateSourcesTest { .getParent(); outDir = new File("outputDir"); mojo = new YangToSourcesMojo( + new ResourceProviderArg[] { + new ResourceProviderArg(ProviderMock.class.getName(), + outDir), + new ResourceProviderArg(ProviderMock2.class.getName(), + outDir) }, new CodeGeneratorArg[] { new CodeGeneratorArg( GeneratorMock.class.getName(), outDir) }, parser, yang); } @@ -54,6 +63,15 @@ public class GenerateSourcesTest { assertThat(GeneratorMock.outputDir, is(outDir)); } + @Test + public void testRes() throws Exception { + mojo.execute(); + assertThat(ProviderMock.called, is(1)); + assertThat(ProviderMock2.called, is(1)); + assertThat(ProviderMock2.baseDir, is(outDir)); + assertThat(ProviderMock.baseDir, is(outDir)); + } + public static class GeneratorMock implements CodeGenerator { private static int called = 0; @@ -67,4 +85,30 @@ public class GenerateSourcesTest { return Lists.newArrayList(); } } + + public static class ProviderMock implements ResourceGenerator { + + private static int called = 0; + private static File baseDir; + + @Override + public void generateResourceFiles(Collection resources, + File outputDir) { + called++; + baseDir = outputDir; + } + } + + public static class ProviderMock2 implements ResourceGenerator { + + private static int called = 0; + private static File baseDir; + + @Override + public void generateResourceFiles(Collection resources, + File outputDir) { + called++; + baseDir = outputDir; + } + } } diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/UtilTest.java b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/UtilTest.java index 0a17d9f13d..75e50f0261 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/UtilTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/maven-yang-plugin/src/test/java/org/opendaylight/controller/yang2sources/plugin/UtilTest.java @@ -7,9 +7,10 @@ */ package org.opendaylight.controller.yang2sources.plugin; -import static org.junit.Assert.*; +import static org.junit.Assert.assertTrue; import java.io.File; +import java.io.FileNotFoundException; import java.util.Collection; import org.junit.Test; @@ -17,7 +18,7 @@ import org.junit.Test; public class UtilTest { @Test - public void testCache() { + public void testCache() throws FileNotFoundException { String yang = new File(getClass().getResource("/mock.yang").getFile()) .getParent(); Collection files = Util.listFiles(yang); diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AbstractChildNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AbstractChildNodeBuilder.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AbstractChildNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AbstractChildNodeBuilder.java index a26bf75cd8..9e31646c35 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AbstractChildNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AbstractChildNodeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import java.util.HashSet; import java.util.Set; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AbstractTypeAwareBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AbstractTypeAwareBuilder.java similarity index 93% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AbstractTypeAwareBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AbstractTypeAwareBuilder.java index fb1464160a..12acbceb02 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AbstractTypeAwareBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AbstractTypeAwareBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import org.opendaylight.controller.yang.model.api.TypeDefinition; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AugmentationSchemaBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AugmentationSchemaBuilder.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AugmentationSchemaBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AugmentationSchemaBuilder.java index f53fae98f8..4ab87df779 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AugmentationSchemaBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AugmentationSchemaBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import java.util.Set; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AugmentationTargetBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AugmentationTargetBuilder.java similarity index 90% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AugmentationTargetBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AugmentationTargetBuilder.java index 0b435c15e1..add9bac333 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/AugmentationTargetBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/AugmentationTargetBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; /** * Interface for builders of those nodes, which can be augmentation targets. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/Builder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/Builder.java similarity index 86% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/Builder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/Builder.java index e8d3424ac6..51039b12ac 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/Builder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/Builder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; /** * Parent interface for all builder interfaces. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/ChildNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/ChildNodeBuilder.java similarity index 85% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/ChildNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/ChildNodeBuilder.java index e8526fcf55..1811851669 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/ChildNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/ChildNodeBuilder.java @@ -5,11 +5,12 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import java.util.Set; import org.opendaylight.controller.yang.common.QName; +import org.opendaylight.controller.yang.model.api.SchemaPath; /** * Interface for all yang data-node containers [augment, case, container, @@ -29,4 +30,6 @@ public interface ChildNodeBuilder extends Builder { Set getChildNodes(); + SchemaPath getPath(); + } diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/DataSchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/DataSchemaNodeBuilder.java similarity index 82% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/DataSchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/DataSchemaNodeBuilder.java index 0974a448f9..de0453105f 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/DataSchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/DataSchemaNodeBuilder.java @@ -5,10 +5,10 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import org.opendaylight.controller.yang.model.api.DataSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.impl.ConstraintsBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ConstraintsBuilder; /** * Interface for all yang data-schema nodes [anyxml, case, container, grouping, diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/GroupingBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/GroupingBuilder.java similarity index 90% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/GroupingBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/GroupingBuilder.java index 94355c8784..7d94cd97ac 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/GroupingBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/GroupingBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import org.opendaylight.controller.yang.model.api.GroupingDefinition; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/SchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/SchemaNodeBuilder.java similarity index 83% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/SchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/SchemaNodeBuilder.java index 533e79df26..eb3286e4f6 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/SchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/SchemaNodeBuilder.java @@ -5,13 +5,13 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import org.opendaylight.controller.yang.common.QName; import org.opendaylight.controller.yang.model.api.SchemaNode; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; -import org.opendaylight.controller.yang.model.parser.builder.impl.UnknownSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.UnknownSchemaNodeBuilder; /** * Interface for all builders of SchemaNode nodes. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeAwareBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeAwareBuilder.java similarity index 91% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeAwareBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeAwareBuilder.java index 172e660413..1f4986cc90 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeAwareBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeAwareBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import org.opendaylight.controller.yang.model.api.TypeDefinition; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeDefinitionAwareBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeDefinitionAwareBuilder.java similarity index 89% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeDefinitionAwareBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeDefinitionAwareBuilder.java index 8f5b3d4a82..0156c24df6 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeDefinitionAwareBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeDefinitionAwareBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; /** * Builders of all nodes, which can have 'typedef' statement must implement this interface. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeDefinitionBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeDefinitionBuilder.java similarity index 88% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeDefinitionBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeDefinitionBuilder.java index a18fa8b4d6..4288a7632a 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/TypeDefinitionBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/TypeDefinitionBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import java.util.List; @@ -16,7 +16,7 @@ import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.type.LengthConstraint; import org.opendaylight.controller.yang.model.api.type.PatternConstraint; import org.opendaylight.controller.yang.model.api.type.RangeConstraint; -import org.opendaylight.controller.yang.model.parser.builder.impl.UnknownSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.UnknownSchemaNodeBuilder; /** * Interface for builders of 'typedef' statement. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/UsesNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/UsesNodeBuilder.java similarity index 86% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/UsesNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/UsesNodeBuilder.java index 69346b0f72..b3e8ad226e 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/api/UsesNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/api/UsesNodeBuilder.java @@ -5,13 +5,13 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.api; +package org.opendaylight.controller.yang.parser.builder.api; import java.util.List; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.util.RefineHolder; +import org.opendaylight.controller.yang.parser.util.RefineHolder; /** * Interface for builders of 'uses' statement. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/AnyXmlBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AnyXmlBuilder.java similarity index 98% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/AnyXmlBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AnyXmlBuilder.java index 68f2d06d96..bd6e0afcdf 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/AnyXmlBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AnyXmlBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -17,7 +17,7 @@ import org.opendaylight.controller.yang.model.api.ConstraintDefinition; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; public class AnyXmlBuilder implements DataSchemaNodeBuilder { private final int line; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/AugmentationSchemaBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AugmentationSchemaBuilderImpl.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/AugmentationSchemaBuilderImpl.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AugmentationSchemaBuilderImpl.java index c27bf683fc..0473726168 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/AugmentationSchemaBuilderImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/AugmentationSchemaBuilderImpl.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.Collections; import java.util.HashMap; @@ -22,13 +22,13 @@ import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; -import org.opendaylight.controller.yang.model.parser.util.YangModelBuilderUtil; import org.opendaylight.controller.yang.model.util.RevisionAwareXPathImpl; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.util.YangModelBuilderUtil; public class AugmentationSchemaBuilderImpl implements AugmentationSchemaBuilder { private final AugmentationSchemaImpl instance; @@ -84,6 +84,14 @@ public class AugmentationSchemaBuilderImpl implements AugmentationSchemaBuilder return null; } + /** + * Always returns null. + */ + @Override + public SchemaPath getPath() { + return null; + } + @Override public AugmentationSchema build() { instance.setTargetPath(finalAugmentTarget); diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ChoiceBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ChoiceBuilder.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ChoiceBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ChoiceBuilder.java index 6660ac3215..7f3680ee53 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ChoiceBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ChoiceBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -21,13 +21,13 @@ import org.opendaylight.controller.yang.model.api.ConstraintDefinition; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationTargetBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.ChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationTargetBuilder; +import org.opendaylight.controller.yang.parser.builder.api.ChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; public class ChoiceBuilder implements DataSchemaNodeBuilder, ChildNodeBuilder, AugmentationTargetBuilder { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ChoiceCaseBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ChoiceCaseBuilder.java similarity index 96% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ChoiceCaseBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ChoiceCaseBuilder.java index a631f00b52..d86db6d920 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ChoiceCaseBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ChoiceCaseBuilder.java @@ -1,4 +1,4 @@ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -19,10 +19,10 @@ import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AbstractChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; public final class ChoiceCaseBuilder extends AbstractChildNodeBuilder implements DataSchemaNodeBuilder { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ConstraintsBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ConstraintsBuilder.java similarity index 98% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ConstraintsBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ConstraintsBuilder.java index 24549539a6..a1936dea55 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ConstraintsBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ConstraintsBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.Collections; import java.util.HashSet; @@ -15,8 +15,8 @@ import org.opendaylight.controller.yang.model.api.ConstraintDefinition; import org.opendaylight.controller.yang.model.api.DataSchemaNode; import org.opendaylight.controller.yang.model.api.MustDefinition; import org.opendaylight.controller.yang.model.api.RevisionAwareXPath; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; import org.opendaylight.controller.yang.model.util.RevisionAwareXPathImpl; +import org.opendaylight.controller.yang.parser.builder.api.Builder; public class ConstraintsBuilder implements Builder { private final ConstraintDefinitionImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ContainerSchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ContainerSchemaNodeBuilder.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ContainerSchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ContainerSchemaNodeBuilder.java index 7693b3a467..81a701c66a 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ContainerSchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ContainerSchemaNodeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -26,14 +26,14 @@ import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationTargetBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AbstractChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationTargetBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; public class ContainerSchemaNodeBuilder extends AbstractChildNodeBuilder implements TypeDefinitionAwareBuilder, AugmentationTargetBuilder, diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/DeviationBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/DeviationBuilder.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/DeviationBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/DeviationBuilder.java index 53fcbf5fd2..cfe6effb6c 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/DeviationBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/DeviationBuilder.java @@ -5,13 +5,13 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import org.opendaylight.controller.yang.model.api.Deviation; import org.opendaylight.controller.yang.model.api.Deviation.Deviate; import org.opendaylight.controller.yang.model.api.SchemaPath; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; -import org.opendaylight.controller.yang.model.parser.util.YangModelBuilderUtil; +import org.opendaylight.controller.yang.parser.builder.api.Builder; +import org.opendaylight.controller.yang.parser.util.YangModelBuilderUtil; public class DeviationBuilder implements Builder { private final DeviationImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ExtensionBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ExtensionBuilder.java similarity index 97% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ExtensionBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ExtensionBuilder.java index cca167c59f..3e8fd8d0a4 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ExtensionBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ExtensionBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -16,7 +16,7 @@ import org.opendaylight.controller.yang.model.api.ExtensionDefinition; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; public class ExtensionBuilder implements SchemaNodeBuilder { private final ExtensionDefinitionImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/FeatureBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/FeatureBuilder.java similarity index 97% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/FeatureBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/FeatureBuilder.java index 372d786685..cdea33bb7f 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/FeatureBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/FeatureBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -16,7 +16,7 @@ import org.opendaylight.controller.yang.model.api.FeatureDefinition; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; public class FeatureBuilder implements SchemaNodeBuilder { private final FeatureDefinitionImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/GroupingBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/GroupingBuilderImpl.java similarity index 96% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/GroupingBuilderImpl.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/GroupingBuilderImpl.java index 1ccd0fcc48..19c94a3f33 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/GroupingBuilderImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/GroupingBuilderImpl.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -23,10 +23,10 @@ import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; public class GroupingBuilderImpl implements GroupingBuilder { private final GroupingDefinitionImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/IdentitySchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentitySchemaNodeBuilder.java similarity index 97% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/IdentitySchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentitySchemaNodeBuilder.java index 810ceeced5..b53d5b2dc2 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/IdentitySchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentitySchemaNodeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -16,7 +16,7 @@ import org.opendaylight.controller.yang.model.api.IdentitySchemaNode; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; public final class IdentitySchemaNodeBuilder implements SchemaNodeBuilder { private final IdentitySchemaNodeImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/IdentityrefTypeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentityrefTypeBuilder.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/IdentityrefTypeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentityrefTypeBuilder.java index f46b1d544a..b7043ce744 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/IdentityrefTypeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/IdentityrefTypeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.Collections; import java.util.List; @@ -17,10 +17,10 @@ import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.type.LengthConstraint; import org.opendaylight.controller.yang.model.api.type.PatternConstraint; import org.opendaylight.controller.yang.model.api.type.RangeConstraint; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractTypeAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; import org.opendaylight.controller.yang.model.util.IdentityrefType; +import org.opendaylight.controller.yang.parser.builder.api.AbstractTypeAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.Builder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; /** * Builder for YANG union type. User can add type to this union as diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/LeafListSchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/LeafListSchemaNodeBuilder.java similarity index 96% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/LeafListSchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/LeafListSchemaNodeBuilder.java index 5ea82c2144..60d8fb4fa7 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/LeafListSchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/LeafListSchemaNodeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -18,9 +18,9 @@ import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractTypeAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AbstractTypeAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; public class LeafListSchemaNodeBuilder extends AbstractTypeAwareBuilder implements SchemaNodeBuilder, DataSchemaNodeBuilder { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/LeafSchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/LeafSchemaNodeBuilder.java similarity index 96% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/LeafSchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/LeafSchemaNodeBuilder.java index 45bb17b318..be58c7ecf5 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/LeafSchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/LeafSchemaNodeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -18,9 +18,9 @@ import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractTypeAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AbstractTypeAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; public class LeafSchemaNodeBuilder extends AbstractTypeAwareBuilder implements DataSchemaNodeBuilder, SchemaNodeBuilder { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ListSchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ListSchemaNodeBuilder.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ListSchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ListSchemaNodeBuilder.java index c9f338fed1..5270e48c28 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ListSchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ListSchemaNodeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -26,15 +26,15 @@ import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationTargetBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AbstractChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationTargetBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; public class ListSchemaNodeBuilder extends AbstractChildNodeBuilder implements DataSchemaNodeBuilder, SchemaNodeBuilder, AugmentationTargetBuilder, diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ModuleBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ModuleBuilder.java similarity index 97% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ModuleBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ModuleBuilder.java index 6986ee166d..1f281898a3 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/ModuleBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/ModuleBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.net.URI; import java.util.ArrayList; @@ -32,18 +32,18 @@ import org.opendaylight.controller.yang.model.api.RpcDefinition; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; -import org.opendaylight.controller.yang.model.parser.builder.api.ChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; -import org.opendaylight.controller.yang.model.parser.util.RefineHolder; -import org.opendaylight.controller.yang.model.parser.util.YangParseException; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.Builder; +import org.opendaylight.controller.yang.parser.builder.api.ChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.util.RefineHolder; +import org.opendaylight.controller.yang.parser.util.YangParseException; /** * This builder builds Module object. If this module is dependent on external diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/NotificationBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/NotificationBuilder.java similarity index 93% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/NotificationBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/NotificationBuilder.java index f2a0a07777..fda7dc7a09 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/NotificationBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/NotificationBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -25,13 +25,13 @@ import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AbstractChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; public class NotificationBuilder extends AbstractChildNodeBuilder implements TypeDefinitionAwareBuilder, SchemaNodeBuilder { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/RpcDefinitionBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/RpcDefinitionBuilder.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/RpcDefinitionBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/RpcDefinitionBuilder.java index f9b1a04cf9..39dde73680 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/RpcDefinitionBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/RpcDefinitionBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -21,10 +21,10 @@ import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; public class RpcDefinitionBuilder implements SchemaNodeBuilder, TypeDefinitionAwareBuilder { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/TypedefBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/TypedefBuilder.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/TypedefBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/TypedefBuilder.java index 94b46e6360..5345d0a116 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/TypedefBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/TypedefBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -19,11 +19,11 @@ import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; import org.opendaylight.controller.yang.model.api.type.LengthConstraint; import org.opendaylight.controller.yang.model.api.type.PatternConstraint; import org.opendaylight.controller.yang.model.api.type.RangeConstraint; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractTypeAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.util.YangParseException; import org.opendaylight.controller.yang.model.util.ExtendedType; import org.opendaylight.controller.yang.model.util.UnknownType; +import org.opendaylight.controller.yang.parser.builder.api.AbstractTypeAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.util.YangParseException; public class TypedefBuilder extends AbstractTypeAwareBuilder implements TypeDefinitionBuilder { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnionTypeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UnionTypeBuilder.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnionTypeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UnionTypeBuilder.java index ec889c53e8..fd9a3aabc8 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnionTypeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UnionTypeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.net.URI; import java.util.ArrayList; @@ -20,10 +20,10 @@ import org.opendaylight.controller.yang.model.api.TypeDefinition; import org.opendaylight.controller.yang.model.api.type.LengthConstraint; import org.opendaylight.controller.yang.model.api.type.PatternConstraint; import org.opendaylight.controller.yang.model.api.type.RangeConstraint; -import org.opendaylight.controller.yang.model.parser.builder.api.AbstractTypeAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; import org.opendaylight.controller.yang.model.util.UnionType; +import org.opendaylight.controller.yang.parser.builder.api.AbstractTypeAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.Builder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; /** * Builder for YANG union type. User can add type to this union as diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnknownSchemaNodeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UnknownSchemaNodeBuilder.java similarity index 97% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnknownSchemaNodeBuilder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UnknownSchemaNodeBuilder.java index c2c32ca347..1c63002f34 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnknownSchemaNodeBuilder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UnknownSchemaNodeBuilder.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -15,7 +15,7 @@ import org.opendaylight.controller.yang.common.QName; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.UnknownSchemaNode; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; public class UnknownSchemaNodeBuilder implements SchemaNodeBuilder { private final UnknownSchemaNodeImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UsesNodeBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UsesNodeBuilderImpl.java similarity index 90% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UsesNodeBuilderImpl.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UsesNodeBuilderImpl.java index 65bdf6e03a..3e7beda756 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UsesNodeBuilderImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/builder/impl/UsesNodeBuilderImpl.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.builder.impl; +package org.opendaylight.controller.yang.parser.builder.impl; import java.util.ArrayList; import java.util.Collections; @@ -20,11 +20,11 @@ import org.opendaylight.controller.yang.model.api.AugmentationSchema; import org.opendaylight.controller.yang.model.api.SchemaNode; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.UsesNode; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; -import org.opendaylight.controller.yang.model.parser.util.RefineHolder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.Builder; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.util.RefineHolder; final class UsesNodeBuilderImpl implements UsesNodeBuilder, Builder { private final UsesNodeImpl instance; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangParserImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangParserImpl.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangParserImpl.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangParserImpl.java index a46a1bd36d..42b348a1bb 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangParserImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangParserImpl.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.impl; +package org.opendaylight.controller.yang.parser.impl; import java.io.File; import java.io.FileInputStream; @@ -50,37 +50,37 @@ import org.opendaylight.controller.yang.model.api.type.PatternConstraint; import org.opendaylight.controller.yang.model.api.type.RangeConstraint; import org.opendaylight.controller.yang.model.api.type.StringTypeDefinition; import org.opendaylight.controller.yang.model.parser.api.YangModelParser; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationTargetBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; -import org.opendaylight.controller.yang.model.parser.builder.api.ChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeAwareBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.AnyXmlBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ChoiceBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ContainerSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.IdentitySchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.IdentityrefTypeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.LeafListSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.LeafSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ListSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ModuleBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.TypedefBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.UnionTypeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.UnknownSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.util.ModuleDependencySort; -import org.opendaylight.controller.yang.model.parser.util.ModuleDependencySort.ModuleSimple; -import org.opendaylight.controller.yang.model.parser.util.ParserUtils; -import org.opendaylight.controller.yang.model.parser.util.RefineHolder; -import org.opendaylight.controller.yang.model.parser.util.TypeConstraints; -import org.opendaylight.controller.yang.model.parser.util.YangParseException; import org.opendaylight.controller.yang.model.util.ExtendedType; import org.opendaylight.controller.yang.model.util.IdentityrefType; import org.opendaylight.controller.yang.model.util.UnknownType; -import org.opendaylight.controller.yang.model.validator.YangModelBasicValidator; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationTargetBuilder; +import org.opendaylight.controller.yang.parser.builder.api.Builder; +import org.opendaylight.controller.yang.parser.builder.api.ChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeAwareBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.AnyXmlBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ChoiceBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ContainerSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.IdentitySchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.IdentityrefTypeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.LeafListSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.LeafSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ListSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ModuleBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.TypedefBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.UnionTypeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.UnknownSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.util.ModuleDependencySort; +import org.opendaylight.controller.yang.parser.util.ModuleDependencySort.ModuleSimple; +import org.opendaylight.controller.yang.parser.util.ParserUtils; +import org.opendaylight.controller.yang.parser.util.RefineHolder; +import org.opendaylight.controller.yang.parser.util.TypeConstraints; +import org.opendaylight.controller.yang.parser.util.YangParseException; +import org.opendaylight.controller.yang.validator.YangModelBasicValidator; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangParserListenerImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangParserListenerImpl.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangParserListenerImpl.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangParserListenerImpl.java index 275d0b54ee..fcc4cd0452 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangParserListenerImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangParserListenerImpl.java @@ -5,9 +5,9 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.impl; +package org.opendaylight.controller.yang.parser.impl; -import static org.opendaylight.controller.yang.model.parser.util.YangModelBuilderUtil.*; +import static org.opendaylight.controller.yang.parser.util.YangModelBuilderUtil.*; import java.net.URI; import java.text.DateFormat; @@ -55,26 +55,26 @@ import org.opendaylight.controller.yang.common.QName; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.Status; import org.opendaylight.controller.yang.model.api.TypeDefinition; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.AnyXmlBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ChoiceBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ChoiceCaseBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ContainerSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.DeviationBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ExtensionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.FeatureBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.IdentitySchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.LeafListSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.LeafSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ListSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ModuleBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.NotificationBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.RpcDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.TypedefBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.UnknownSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.util.RefineHolder; import org.opendaylight.controller.yang.model.util.YangTypesConverter; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.AnyXmlBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ChoiceBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ChoiceCaseBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ContainerSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.DeviationBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ExtensionBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.FeatureBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.IdentitySchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.LeafListSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.LeafSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ListSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ModuleBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.NotificationBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.RpcDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.TypedefBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.UnknownSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.util.RefineHolder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangValidationException.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangValidationException.java similarity index 92% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangValidationException.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangValidationException.java index 43d39406de..854b072419 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/impl/YangValidationException.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/impl/YangValidationException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.impl; +package org.opendaylight.controller.yang.parser.impl; /** * Unchecked exception thrown if yang definition is not valid according to diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/BitImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/BitImpl.java similarity index 98% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/BitImpl.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/BitImpl.java index 7a4756b4e4..c744f1b881 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/BitImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/BitImpl.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import java.util.Collections; import java.util.List; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/ModuleDependencySort.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/ModuleDependencySort.java similarity index 95% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/ModuleDependencySort.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/ModuleDependencySort.java index 93d4f0907f..75b600902d 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/ModuleDependencySort.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/ModuleDependencySort.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import java.util.Date; import java.util.List; @@ -13,10 +13,10 @@ import java.util.Map; import java.util.Set; import org.opendaylight.controller.yang.model.api.ModuleImport; -import org.opendaylight.controller.yang.model.parser.builder.impl.ModuleBuilder; -import org.opendaylight.controller.yang.model.parser.impl.YangParserListenerImpl; -import org.opendaylight.controller.yang.model.parser.util.TopologicalSort.Node; -import org.opendaylight.controller.yang.model.parser.util.TopologicalSort.NodeImpl; +import org.opendaylight.controller.yang.parser.builder.impl.ModuleBuilder; +import org.opendaylight.controller.yang.parser.impl.YangParserListenerImpl; +import org.opendaylight.controller.yang.parser.util.TopologicalSort.Node; +import org.opendaylight.controller.yang.parser.util.TopologicalSort.NodeImpl; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/MustDefinitionImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/MustDefinitionImpl.java similarity index 98% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/MustDefinitionImpl.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/MustDefinitionImpl.java index 9758aa5a9d..31f39e325a 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/MustDefinitionImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/MustDefinitionImpl.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import org.opendaylight.controller.yang.model.api.MustDefinition; import org.opendaylight.controller.yang.model.api.RevisionAwareXPath; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/ParserUtils.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/ParserUtils.java similarity index 82% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/ParserUtils.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/ParserUtils.java index 8237da69b0..757c02c8a0 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/ParserUtils.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/ParserUtils.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import java.util.ArrayList; import java.util.List; @@ -15,22 +15,22 @@ import org.opendaylight.controller.yang.model.api.ModuleImport; import org.opendaylight.controller.yang.model.api.MustDefinition; import org.opendaylight.controller.yang.model.api.SchemaPath; import org.opendaylight.controller.yang.model.api.TypeDefinition; -import org.opendaylight.controller.yang.model.parser.builder.api.AugmentationSchemaBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.ChildNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.DataSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.GroupingBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; -import org.opendaylight.controller.yang.model.parser.builder.api.UsesNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.AnyXmlBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ChoiceBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ChoiceCaseBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ConstraintsBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ContainerSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.LeafListSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.LeafSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ListSchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ModuleBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.UnknownSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.AugmentationSchemaBuilder; +import org.opendaylight.controller.yang.parser.builder.api.ChildNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.DataSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.GroupingBuilder; +import org.opendaylight.controller.yang.parser.builder.api.TypeDefinitionBuilder; +import org.opendaylight.controller.yang.parser.builder.api.UsesNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.AnyXmlBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ChoiceBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ChoiceCaseBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ConstraintsBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ContainerSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.LeafListSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.LeafSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ListSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ModuleBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.UnknownSchemaNodeBuilder; public final class ParserUtils { @@ -96,10 +96,28 @@ public final class ParserUtils { final ChildNodeBuilder target) { for (DataSchemaNodeBuilder builder : augment.getChildNodes()) { builder.setAugmenting(true); + correctPath(augment, target.getPath()); target.addChildNode(builder); } } + private static void correctPath(final ChildNodeBuilder node, + final SchemaPath parentSchemaPath) { + for(DataSchemaNodeBuilder builder : node.getChildNodes()) { + + // add correct path + SchemaPath targetNodeSchemaPath = parentSchemaPath; + List targetNodePath = new ArrayList(targetNodeSchemaPath.getPath()); + targetNodePath.add(builder.getQName()); + builder.setPath(new SchemaPath(targetNodePath, true)); + + if(builder instanceof ChildNodeBuilder) { + ChildNodeBuilder cnb = (ChildNodeBuilder)builder; + correctPath(cnb, builder.getPath()); + } + } + } + public static LeafSchemaNodeBuilder copyLeafBuilder( final LeafSchemaNodeBuilder old) { final LeafSchemaNodeBuilder copy = new LeafSchemaNodeBuilder( diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/RefineHolder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/RefineHolder.java similarity index 92% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/RefineHolder.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/RefineHolder.java index 5a24773707..4dd46769d8 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/RefineHolder.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/RefineHolder.java @@ -5,14 +5,14 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import java.util.ArrayList; import java.util.List; import org.opendaylight.controller.yang.model.api.MustDefinition; -import org.opendaylight.controller.yang.model.parser.builder.api.Builder; -import org.opendaylight.controller.yang.model.parser.builder.impl.UnknownSchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.api.Builder; +import org.opendaylight.controller.yang.parser.builder.impl.UnknownSchemaNodeBuilder; public final class RefineHolder implements Builder { private final String name; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/TopologicalSort.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/TopologicalSort.java similarity index 98% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/TopologicalSort.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/TopologicalSort.java index 333137c39a..46c092ec66 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/TopologicalSort.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/TopologicalSort.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import java.util.List; import java.util.Set; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/TypeConstraints.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/TypeConstraints.java similarity index 99% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/TypeConstraints.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/TypeConstraints.java index 360d8ea897..18e4c31ab9 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/TypeConstraints.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/TypeConstraints.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import java.util.ArrayList; import java.util.Collections; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/UnknownBoundaryNumber.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/UnknownBoundaryNumber.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/UnknownBoundaryNumber.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/UnknownBoundaryNumber.java index 14884d2302..ac3263ac59 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/UnknownBoundaryNumber.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/UnknownBoundaryNumber.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; /** * Marker object representing special 'min' or 'max' values in YANG. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangModelBuilderUtil.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangModelBuilderUtil.java similarity index 99% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangModelBuilderUtil.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangModelBuilderUtil.java index 49b177eb66..72e364cca5 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangModelBuilderUtil.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangModelBuilderUtil.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/eplv10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import java.net.URI; import java.util.ArrayList; @@ -81,8 +81,6 @@ import org.opendaylight.controller.yang.model.api.type.EnumTypeDefinition.EnumPa import org.opendaylight.controller.yang.model.api.type.LengthConstraint; import org.opendaylight.controller.yang.model.api.type.PatternConstraint; import org.opendaylight.controller.yang.model.api.type.RangeConstraint; -import org.opendaylight.controller.yang.model.parser.builder.api.SchemaNodeBuilder; -import org.opendaylight.controller.yang.model.parser.builder.impl.ConstraintsBuilder; import org.opendaylight.controller.yang.model.util.BaseConstraints; import org.opendaylight.controller.yang.model.util.BinaryType; import org.opendaylight.controller.yang.model.util.BitsType; @@ -101,6 +99,8 @@ import org.opendaylight.controller.yang.model.util.Uint32; import org.opendaylight.controller.yang.model.util.Uint64; import org.opendaylight.controller.yang.model.util.Uint8; import org.opendaylight.controller.yang.model.util.UnknownType; +import org.opendaylight.controller.yang.parser.builder.api.SchemaNodeBuilder; +import org.opendaylight.controller.yang.parser.builder.impl.ConstraintsBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangParseException.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangParseException.java similarity index 96% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangParseException.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangParseException.java index 301e5332f8..c9fd723559 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangParseException.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangParseException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/eplv10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; public class YangParseException extends RuntimeException { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangValidationException.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangValidationException.java similarity index 92% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangValidationException.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangValidationException.java index 25d317da12..070692612e 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/util/YangValidationException.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/parser/util/YangValidationException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; /** * Unchecked exception thrown if yang definition is not valid according to diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/BasicValidations.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/BasicValidations.java similarity index 98% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/BasicValidations.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/BasicValidations.java index 65d1d60375..762b910910 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/BasicValidations.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/BasicValidations.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/eplv10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; import java.text.DateFormat; import java.text.ParseException; @@ -18,8 +18,8 @@ import java.util.regex.Pattern; import org.antlr.v4.runtime.ParserRuleContext; import org.antlr.v4.runtime.tree.ParseTree; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Yang_version_stmtContext; -import org.opendaylight.controller.yang.model.parser.impl.YangParserListenerImpl; -import org.opendaylight.controller.yang.model.parser.util.YangValidationException; +import org.opendaylight.controller.yang.parser.impl.YangParserListenerImpl; +import org.opendaylight.controller.yang.parser.util.YangValidationException; import com.google.common.collect.Sets; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/ValidationUtil.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/ValidationUtil.java similarity index 93% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/ValidationUtil.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/ValidationUtil.java index 31c4b8a34b..d697201f21 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/ValidationUtil.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/ValidationUtil.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/eplv10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; import java.util.Arrays; import java.util.Collection; @@ -16,8 +16,8 @@ import java.util.Set; import org.antlr.v4.runtime.tree.ParseTree; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Module_stmtContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Submodule_stmtContext; -import org.opendaylight.controller.yang.model.parser.util.YangModelBuilderUtil; -import org.opendaylight.controller.yang.model.parser.util.YangValidationException; +import org.opendaylight.controller.yang.parser.util.YangModelBuilderUtil; +import org.opendaylight.controller.yang.parser.util.YangValidationException; /** * Validation utilities diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/YangModelBasicValidationListener.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/YangModelBasicValidationListener.java similarity index 99% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/YangModelBasicValidationListener.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/YangModelBasicValidationListener.java index 47f6713e57..7f270fe08e 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/YangModelBasicValidationListener.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/YangModelBasicValidationListener.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; import java.net.URI; import java.net.URISyntaxException; @@ -57,7 +57,7 @@ import org.opendaylight.controller.antlrv4.code.gen.YangParser.Unique_stmtContex import org.opendaylight.controller.antlrv4.code.gen.YangParser.Uses_stmtContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Yin_element_argContext; import org.opendaylight.controller.antlrv4.code.gen.YangParserBaseListener; -import org.opendaylight.controller.yang.model.parser.impl.YangParserListenerImpl; +import org.opendaylight.controller.yang.parser.impl.YangParserListenerImpl; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/YangModelBasicValidator.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/YangModelBasicValidator.java similarity index 90% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/YangModelBasicValidator.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/YangModelBasicValidator.java index dc80dba014..ac00bc1340 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/validator/YangModelBasicValidator.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/validator/YangModelBasicValidator.java @@ -5,13 +5,13 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; import java.util.List; import org.antlr.v4.runtime.tree.ParseTree; import org.antlr.v4.runtime.tree.ParseTreeWalker; -import org.opendaylight.controller.yang.model.parser.util.YangValidationException; +import org.opendaylight.controller.yang.parser.util.YangValidationException; /** * Exposed basic yang validation. diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/TestUtils.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/TestUtils.java similarity index 98% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/TestUtils.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/TestUtils.java index 90a9b4ce1e..5aa620df89 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/TestUtils.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/TestUtils.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.impl; +package org.opendaylight.controller.yang.parser.impl; import java.io.File; import java.net.URI; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/TypesResolutionTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/TypesResolutionTest.java similarity index 99% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/TypesResolutionTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/TypesResolutionTest.java index 4a48a4e2da..71d14a5734 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/TypesResolutionTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/TypesResolutionTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.impl; +package org.opendaylight.controller.yang.parser.impl; import static org.junit.Assert.*; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/YangParserTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/YangParserTest.java similarity index 99% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/YangParserTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/YangParserTest.java index 9ae53f1174..b2a93ea07e 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/impl/YangParserTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/impl/YangParserTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.impl; +package org.opendaylight.controller.yang.parser.impl; import static org.junit.Assert.*; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/util/ModuleDependencySortTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/util/ModuleDependencySortTest.java similarity index 92% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/util/ModuleDependencySortTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/util/ModuleDependencySortTest.java index c38771d939..195347aac0 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/util/ModuleDependencySortTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/util/ModuleDependencySortTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; import static org.hamcrest.core.AnyOf.anyOf; import static org.hamcrest.core.Is.is; @@ -22,11 +22,11 @@ import java.util.Set; import org.hamcrest.Matcher; import org.junit.Test; import org.opendaylight.controller.yang.model.api.ModuleImport; -import org.opendaylight.controller.yang.model.parser.builder.impl.ModuleBuilder; -import org.opendaylight.controller.yang.model.parser.impl.YangParserListenerImpl; -import org.opendaylight.controller.yang.model.parser.util.ModuleDependencySort.ModuleNodeImpl; -import org.opendaylight.controller.yang.model.parser.util.ModuleDependencySort.ModuleSimple; -import org.opendaylight.controller.yang.model.parser.util.TopologicalSort.Edge; +import org.opendaylight.controller.yang.parser.builder.impl.ModuleBuilder; +import org.opendaylight.controller.yang.parser.impl.YangParserListenerImpl; +import org.opendaylight.controller.yang.parser.util.ModuleDependencySort.ModuleNodeImpl; +import org.opendaylight.controller.yang.parser.util.ModuleDependencySort.ModuleSimple; +import org.opendaylight.controller.yang.parser.util.TopologicalSort.Edge; import com.google.common.collect.Sets; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/util/TopologicalSortTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/util/TopologicalSortTest.java similarity index 85% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/util/TopologicalSortTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/util/TopologicalSortTest.java index bfb94e530c..1cd97bfcec 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/parser/util/TopologicalSortTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/parser/util/TopologicalSortTest.java @@ -5,17 +5,17 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.parser.util; +package org.opendaylight.controller.yang.parser.util; -import static org.hamcrest.core.Is.*; -import static org.junit.Assert.*; +import static org.hamcrest.core.Is.is; +import static org.junit.Assert.assertThat; import java.util.List; import java.util.Set; import org.junit.Test; -import org.opendaylight.controller.yang.model.parser.util.TopologicalSort.Node; -import org.opendaylight.controller.yang.model.parser.util.TopologicalSort.NodeImpl; +import org.opendaylight.controller.yang.parser.util.TopologicalSort.Node; +import org.opendaylight.controller.yang.parser.util.TopologicalSort.NodeImpl; import com.google.common.collect.Sets; diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationListTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationListTest.java similarity index 94% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationListTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationListTest.java index 4e05f48a77..1db855c1b1 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationListTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationListTest.java @@ -5,10 +5,10 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; -import static org.junit.Assert.*; -import static org.junit.matchers.JUnitMatchers.*; +import static org.junit.Assert.assertThat; +import static org.junit.matchers.JUnitMatchers.containsString; import org.junit.Before; import org.junit.Test; @@ -20,7 +20,7 @@ import org.opendaylight.controller.antlrv4.code.gen.YangParser.Mandatory_stmtCon import org.opendaylight.controller.antlrv4.code.gen.YangParser.Ordered_by_argContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Type_stmtContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Unique_stmtContext; -import org.opendaylight.controller.yang.model.parser.util.YangValidationException; +import org.opendaylight.controller.yang.parser.util.YangValidationException; public class YangModelValidationListTest { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationModuleTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationModuleTest.java similarity index 96% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationModuleTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationModuleTest.java index 2bdd3e5074..3f9a53fe68 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationModuleTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationModuleTest.java @@ -5,10 +5,10 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; -import static org.junit.Assert.*; -import static org.junit.matchers.JUnitMatchers.*; +import static org.junit.Assert.assertThat; +import static org.junit.matchers.JUnitMatchers.containsString; import static org.mockito.Mockito.*; import org.junit.Before; @@ -19,7 +19,7 @@ import org.opendaylight.controller.antlrv4.code.gen.YangParser.Namespace_stmtCon import org.opendaylight.controller.antlrv4.code.gen.YangParser.Revision_stmtContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Revision_stmtsContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Yang_version_stmtContext; -import org.opendaylight.controller.yang.model.parser.util.YangValidationException; +import org.opendaylight.controller.yang.parser.util.YangValidationException; public class YangModelValidationModuleTest { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationSubModuleTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationSubModuleTest.java similarity index 91% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationSubModuleTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationSubModuleTest.java index fe4f0a2452..d3276fac25 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationSubModuleTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationSubModuleTest.java @@ -5,11 +5,11 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; -import static org.junit.Assert.*; -import static org.junit.matchers.JUnitMatchers.*; -import static org.mockito.Mockito.*; +import static org.junit.Assert.assertThat; +import static org.junit.matchers.JUnitMatchers.containsString; +import static org.mockito.Mockito.mock; import org.antlr.v4.runtime.tree.ParseTree; import org.junit.Before; @@ -17,7 +17,7 @@ import org.junit.Test; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Belongs_to_stmtContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Submodule_header_stmtsContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Submodule_stmtContext; -import org.opendaylight.controller.yang.model.parser.util.YangValidationException; +import org.opendaylight.controller.yang.parser.util.YangValidationException; public class YangModelValidationSubModuleTest { diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationTest.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationTest.java similarity index 97% rename from opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationTest.java rename to opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationTest.java index d070708d9d..d15a7a24f8 100644 --- a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/model/validator/YangModelValidationTest.java +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/test/java/org/opendaylight/controller/yang/validator/YangModelValidationTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.yang.model.validator; +package org.opendaylight.controller.yang.validator; import static org.hamcrest.core.Is.is; import static org.junit.Assert.*; @@ -33,8 +33,8 @@ import org.opendaylight.controller.antlrv4.code.gen.YangParser.Prefix_stmtContex import org.opendaylight.controller.antlrv4.code.gen.YangParser.Revision_date_stmtContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.Status_argContext; import org.opendaylight.controller.antlrv4.code.gen.YangParser.StringContext; -import org.opendaylight.controller.yang.model.parser.impl.YangParserListenerImpl; -import org.opendaylight.controller.yang.model.parser.util.YangValidationException; +import org.opendaylight.controller.yang.parser.impl.YangParserListenerImpl; +import org.opendaylight.controller.yang.parser.util.YangValidationException; import com.google.common.collect.Sets; diff --git a/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/SimpleForwardingImpl.java b/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/SimpleForwardingImpl.java index 9e838d29e8..c2fee970ac 100644 --- a/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/SimpleForwardingImpl.java +++ b/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/SimpleForwardingImpl.java @@ -285,12 +285,13 @@ public class SimpleForwardingImpl implements IfNewHostNotify, //short tag = container.getTag((Long)nextNode.getNodeID()); short tag = 0; if (tag != 0) { - log.debug("adding SET_VLAN " + tag - + " for traffic leaving " + currNode + "/" - + outPort + "toward switch " + nextNode); + log.debug("adding SET_VLAN {} for traffic " + + "leaving {}/{} toward switch {}", + new Object[] { tag, currNode, outPort, + nextNode}); actions.add(new SetVlanId(tag)); } else { - log.debug("No tag assigned to switch " + nextNode); + log.debug("No tag assigned to switch {}", nextNode); } } } @@ -319,12 +320,12 @@ public class SimpleForwardingImpl implements IfNewHostNotify, //short tag = container.getTag((Long)currNode.getNodeID()); short tag = 0; if (tag != 0) { - log.debug("adding MATCH VLAN " + tag - + " for traffic entering " + currNode + "/" - + inPort); + log.debug("adding MATCH VLAN {} for traffic entering" + + " {}/{}", + new Object[] {tag, currNode, inPort}); match.setField(MatchType.DL_VLAN, tag); } else { - log.debug("No tag assigned to switch " + currNode); + log.debug("No tag assigned to switch {}", currNode); } } } @@ -351,10 +352,11 @@ public class SimpleForwardingImpl implements IfNewHostNotify, pos.put(inPort, po); this.rulesDB.put(key, pos); if (!inPort.getType().equals(NodeConnectorIDType.ALL)) { - log.debug("Adding Match(inPort=" + inPort + ",DIP=" - + host.getNetworkAddress().getHostAddress() - + ") Action(outPort=" + outPort + ") to node " - + currNode); + log.debug("Adding Match(inPort = {} , DIP = {})" + + " Action(outPort= {}) to node {}", + new Object[] { inPort, + host.getNetworkAddress().getHostAddress(), + outPort, currNode}); if ((removed_po != null) && (!po.getFlow().getMatch().equals( removed_po.getFlow().getMatch()))) { @@ -365,10 +367,10 @@ public class SimpleForwardingImpl implements IfNewHostNotify, } } else { - log.debug("Adding policy Match(DIP=" - + host.getNetworkAddress().getHostAddress() - + ") Action(outPort=" + outPort + ") to node " - + currNode); + log.debug("Adding policyMatch(DIP = {}) Action(outPort= {}) " + + "to node {}", new Object[] { + host.getNetworkAddress().getHostAddress(), outPort, + currNode}); } } } @@ -419,8 +421,8 @@ public class SimpleForwardingImpl implements IfNewHostNotify, if ((res == null) || ((links = res.getEdges()) == null)) { // Still the path that connect node to rootNode // doesn't exists - log.debug("NO Route/Path between SW[" + node + "] --> SW[" - + rootNode + "] cleaning potentially existing entries"); + log.debug("NO Route/Path between SW[{}] --> SW[{}] cleaning " + + "potentially existing entries", node, rootNode); key = new HostNodePair(host, node); pos = this.rulesDB.get(key); if (pos != null) { @@ -436,8 +438,7 @@ public class SimpleForwardingImpl implements IfNewHostNotify, continue; } - log.debug("Route between SW[" + node + "] --> SW[" + rootNode - + "]"); + log.debug("Route between SW[{}] --> SW[{}]", node, rootNode); Integer curr; Node currNode = node; key = new HostNodePair(host, currNode); @@ -528,8 +529,8 @@ public class SimpleForwardingImpl implements IfNewHostNotify, if ((res == null) || ((links = res.getEdges()) == null)) { // Still the path that connect node to rootNode // doesn't exists - log.debug("NO Route/Path between SW[" + node + "] --> SW[" - + rootNode + "] cleaning potentially existing entries"); + log.debug("NO Route/Path between SW[{}] --> SW[{}] cleaning " + + "potentially existing entries", node, rootNode); key = new HostNodePair(host, node); pos = this.rulesDB.get(key); if (pos != null) { @@ -545,7 +546,7 @@ public class SimpleForwardingImpl implements IfNewHostNotify, return null; } - log.debug("Route between SW[" + node + "] --> SW[" + rootNode + "]"); + log.debug("Route between SW[{}] --> SW[{}]", node, rootNode); Integer curr; Node currNode = node; key = new HostNodePair(host, currNode); @@ -557,10 +558,10 @@ public class SimpleForwardingImpl implements IfNewHostNotify, continue; } - log.debug("Link [" + currNode + "/" + link.getHeadNodeConnector() - + "] --> [" - + link.getHeadNodeConnector().getNode() + "/" - + link.getTailNodeConnector() + "]"); + log.debug("Link [{}/{}] --> [{}/{}]", new Object[] { + currNode, link.getHeadNodeConnector(), + link.getHeadNodeConnector().getNode(), + link.getTailNodeConnector()}); // Index all the switches to be programmed switchesToProgram.add(currNode); @@ -627,8 +628,8 @@ public class SimpleForwardingImpl implements IfNewHostNotify, + po.toString() + " on switch " + swId); } } else { - log.error("Cannot find a policy for SW:{" + swId - + "} Host: {" + host + "}"); + log.error("Cannot find a policy for SW:({}) Host: ({})", + swId, host); /* // Now dump every single rule */ /* for (HostNodePair dumpkey : this.rulesDB.keySet()) { */ /* po = this.rulesDB.get(dumpkey); */ @@ -688,7 +689,7 @@ public class SimpleForwardingImpl implements IfNewHostNotify, for (HostNodePair key : this.rulesDB.keySet()) { Node node = key.getNode(); if (targetNode == null || node.equals(targetNode)) { - log.debug("Work on " + node + " host " + key.getHost()); + log.debug("Work on {} host {}", node, key.getHost()); pos = this.rulesDB.get(key); for (Map.Entry e : pos.entrySet()) { po = e.getValue(); @@ -697,7 +698,7 @@ public class SimpleForwardingImpl implements IfNewHostNotify, this.frm.uninstallFlowEntry(po); } } - log.debug("Remove " + key); + log.debug("Remove {}", key); this.rulesDB.remove(key); } } @@ -738,8 +739,8 @@ public class SimpleForwardingImpl implements IfNewHostNotify, } pl.add(po); log.debug("Adding Pruned Policy for SwId: {}", swId); - log.debug("Old Policy: " + po.toString()); - log.debug("New Policy: " + new_po.toString()); + log.debug("Old Policy: {}", po); + log.debug("New Policy: {}", new_po); } private void pruneExcessRules(Set switches) { @@ -825,7 +826,7 @@ public class SimpleForwardingImpl implements IfNewHostNotify, switch (type) { case REMOVED: - log.debug("Node " + node + " gone, doing a cleanup"); + log.debug("Node {} gone, doing a cleanup", node); uninstallPerNodeRules(node); break; default: diff --git a/opendaylight/switchmanager/implementation/src/main/java/org/opendaylight/controller/switchmanager/internal/SwitchManagerImpl.java b/opendaylight/switchmanager/implementation/src/main/java/org/opendaylight/controller/switchmanager/internal/SwitchManagerImpl.java index 79159e5ff1..4ef8416436 100644 --- a/opendaylight/switchmanager/implementation/src/main/java/org/opendaylight/controller/switchmanager/internal/SwitchManagerImpl.java +++ b/opendaylight/switchmanager/implementation/src/main/java/org/opendaylight/controller/switchmanager/internal/SwitchManagerImpl.java @@ -1479,9 +1479,13 @@ public class SwitchManagerImpl implements ISwitchManager, ci.println("Please enter node id"); return; } - Long id = Long.decode(st); - Node node = NodeCreator.createOFNode(id); + Node node = Node.fromString(st); + if (node == null) { + ci.println("Please enter node id"); + return; + } + Set nodeConnectorSet = getUpNodeConnectors(node); if (nodeConnectorSet == null) { return; @@ -1501,10 +1505,14 @@ public class SwitchManagerImpl implements ISwitchManager, ci.println("Please enter node id"); return; } - Long id = Long.decode(st); + + Node node = Node.fromString(st); + if (node == null) { + ci.println("Please enter node id"); + return; + } ci.println(" NodeConnector BandWidth(Gbps) Admin State"); - Node node = NodeCreator.createOFNode(id); Set nodeConnectorSet = getNodeConnectors(node); if (nodeConnectorSet == null) { return; @@ -1534,8 +1542,14 @@ public class SwitchManagerImpl implements ISwitchManager, ci.println("Please enter node id"); return; } - Object id = Long.decode(st); - Switch sw = getSwitchByNode(NodeCreator.createOFNode((Long) id)); + + Node node = Node.fromString(st); + if (node == null) { + ci.println("Please enter node id"); + return; + } + + Switch sw = getSwitchByNode(node); ci.println(" NodeConnector Name"); if (sw == null) { @@ -1549,10 +1563,9 @@ public class SwitchManagerImpl implements ISwitchManager, nodeConnectorName = (propMap == null) ? null : ((Name) propMap .get(Name.NamePropName)).getValue(); if (nodeConnectorName != null) { - Node node = nodeConnector.getNode(); - if (!node.equals(getNode((Long) id))) { - log.debug("node not match {} {}", node, - getNode((Long) id)); + Node nd = nodeConnector.getNode(); + if (!nd.equals(node)) { + log.debug("node not match {} {}", nd, node); } Map map = nodeConnectorNames .get(node); @@ -1584,9 +1597,12 @@ public class SwitchManagerImpl implements ISwitchManager, ci.println("Please enter node id"); return; } - Long id = Long.decode(st); - Node node = NodeCreator.createOFNode(id); + Node node = Node.fromString(st); + if (node == null) { + ci.println("Please enter node id"); + return; + } st = ci.nextArgument(); if (st == null) { diff --git a/opendaylight/web/devices/src/main/resources/WEB-INF/jsp/autherror.jsp b/opendaylight/web/devices/src/main/resources/WEB-INF/jsp/autherror.jsp index ef42d286eb..127a5a09dd 100644 --- a/opendaylight/web/devices/src/main/resources/WEB-INF/jsp/autherror.jsp +++ b/opendaylight/web/devices/src/main/resources/WEB-INF/jsp/autherror.jsp @@ -15,7 +15,6 @@ <% - if (session != null) session.invalidate(); String filePath = "/WEB-INF/jsp/customerror.jsp"; URL fileURL = pageContext.getServletContext().getResource(filePath); if(fileURL!=null) { @@ -51,5 +50,6 @@ + <% if (session != null) session.invalidate(); %> diff --git a/opendaylight/web/flows/src/main/resources/WEB-INF/jsp/autherror.jsp b/opendaylight/web/flows/src/main/resources/WEB-INF/jsp/autherror.jsp index ef42d286eb..127a5a09dd 100644 --- a/opendaylight/web/flows/src/main/resources/WEB-INF/jsp/autherror.jsp +++ b/opendaylight/web/flows/src/main/resources/WEB-INF/jsp/autherror.jsp @@ -15,7 +15,6 @@ <% - if (session != null) session.invalidate(); String filePath = "/WEB-INF/jsp/customerror.jsp"; URL fileURL = pageContext.getServletContext().getResource(filePath); if(fileURL!=null) { @@ -51,5 +50,6 @@ + <% if (session != null) session.invalidate(); %> diff --git a/opendaylight/web/root/src/main/resources/WEB-INF/jsp/autherror.jsp b/opendaylight/web/root/src/main/resources/WEB-INF/jsp/autherror.jsp index ef42d286eb..a2fa4287a5 100644 --- a/opendaylight/web/root/src/main/resources/WEB-INF/jsp/autherror.jsp +++ b/opendaylight/web/root/src/main/resources/WEB-INF/jsp/autherror.jsp @@ -15,7 +15,6 @@ <% - if (session != null) session.invalidate(); String filePath = "/WEB-INF/jsp/customerror.jsp"; URL fileURL = pageContext.getServletContext().getResource(filePath); if(fileURL!=null) { @@ -51,5 +50,6 @@ + <% if (session != null) session.invalidate(); %> diff --git a/opendaylight/web/topology/src/main/java/org/opendaylight/controller/topology/web/Topology.java b/opendaylight/web/topology/src/main/java/org/opendaylight/controller/topology/web/Topology.java index 0f4569fc19..b4695defdb 100644 --- a/opendaylight/web/topology/src/main/java/org/opendaylight/controller/topology/web/Topology.java +++ b/opendaylight/web/topology/src/main/java/org/opendaylight/controller/topology/web/Topology.java @@ -287,6 +287,8 @@ public class Topology implements IObjectReader, IConfigurationAware { Map data = (Map) nodeEntry.get("data"); data.put("$desc", description); nodeEntry.put("data", data); + // clear adjacencies since this is now a single node + nodeEntry.put("adjacencies", new LinkedList>()); stagedNodes.put(node.id(), nodeEntry); } else { newNodes.put(node.id(), node.out()); diff --git a/opendaylight/web/topology/src/main/resources/WEB-INF/jsp/autherror.jsp b/opendaylight/web/topology/src/main/resources/WEB-INF/jsp/autherror.jsp index ef42d286eb..127a5a09dd 100644 --- a/opendaylight/web/topology/src/main/resources/WEB-INF/jsp/autherror.jsp +++ b/opendaylight/web/topology/src/main/resources/WEB-INF/jsp/autherror.jsp @@ -15,7 +15,6 @@ <% - if (session != null) session.invalidate(); String filePath = "/WEB-INF/jsp/customerror.jsp"; URL fileURL = pageContext.getServletContext().getResource(filePath); if(fileURL!=null) { @@ -51,5 +50,6 @@ + <% if (session != null) session.invalidate(); %> diff --git a/opendaylight/web/troubleshoot/src/main/resources/WEB-INF/jsp/autherror.jsp b/opendaylight/web/troubleshoot/src/main/resources/WEB-INF/jsp/autherror.jsp index ef42d286eb..a2fa4287a5 100644 --- a/opendaylight/web/troubleshoot/src/main/resources/WEB-INF/jsp/autherror.jsp +++ b/opendaylight/web/troubleshoot/src/main/resources/WEB-INF/jsp/autherror.jsp @@ -15,7 +15,6 @@ <% - if (session != null) session.invalidate(); String filePath = "/WEB-INF/jsp/customerror.jsp"; URL fileURL = pageContext.getServletContext().getResource(filePath); if(fileURL!=null) { @@ -51,5 +50,6 @@ + <% if (session != null) session.invalidate(); %>