[Minor] using Deque instead of Stack

This commit is contained in:
Robert von Burg 2014-02-01 13:47:04 +01:00
parent 5e6423c443
commit 58b742d5d9
2 changed files with 12 additions and 10 deletions

View File

@ -15,9 +15,10 @@
*/
package ch.eitchnet.privilege.xml;
import java.util.ArrayDeque;
import java.util.Deque;
import java.util.HashMap;
import java.util.Map;
import java.util.Stack;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
@ -33,7 +34,7 @@ public class PrivilegeConfigSaxReader extends DefaultHandler {
// private static final Logger logger = LoggerFactory.getLogger(PrivilegeConfigSaxReader.class);
private Stack<ElementParser> buildersStack = new Stack<ElementParser>();
private Deque<ElementParser> buildersStack = new ArrayDeque<ElementParser>();
private PrivilegeContainerModel containerModel;
@ -49,11 +50,11 @@ public class PrivilegeConfigSaxReader extends DefaultHandler {
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
if (qName.equals(XmlConstants.XML_CONTAINER)) {
this.buildersStack.add(new ContainerParser());
this.buildersStack.push(new ContainerParser());
} else if (qName.equals(XmlConstants.XML_PARAMETERS)) {
this.buildersStack.add(new ParametersParser());
this.buildersStack.push(new ParametersParser());
} else if (qName.equals(XmlConstants.XML_POLICIES)) {
this.buildersStack.add(new PoliciesParser());
this.buildersStack.push(new PoliciesParser());
}
if (!this.buildersStack.isEmpty())

View File

@ -16,14 +16,15 @@
package ch.eitchnet.privilege.xml;
import java.text.MessageFormat;
import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Deque;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.Stack;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -46,7 +47,7 @@ public class PrivilegeModelSaxReader extends DefaultHandler {
protected static final Logger logger = LoggerFactory.getLogger(PrivilegeModelSaxReader.class);
private Stack<ElementParser> buildersStack = new Stack<ElementParser>();
private Deque<ElementParser> buildersStack = new ArrayDeque<ElementParser>();
private List<User> users;
private List<Role> roles;
@ -76,12 +77,12 @@ public class PrivilegeModelSaxReader extends DefaultHandler {
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
if (qName.equals(XmlConstants.XML_USER)) {
this.buildersStack.add(new UserParser());
this.buildersStack.push(new UserParser());
this.insideUser = true;
} else if (qName.equals(XmlConstants.XML_PROPERTIES)) {
this.buildersStack.add(new PropertyParser());
this.buildersStack.push(new PropertyParser());
} else if (qName.equals(XmlConstants.XML_ROLE) && !this.insideUser) {
this.buildersStack.add(new RoleParser());
this.buildersStack.push(new RoleParser());
}
if (!this.buildersStack.isEmpty())