@Override public void openStartElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver) { super.openStartElement(xPathFragment, namespaceResolver); if(position != null){ T newLevel = createNewLevel(false, position); if(isLastEventStart){ //this means 2 startevents in a row so the last this is a complex object setComplex(position, true); } String keyName = getKeyName(xPathFragment); if (keyName != null && !keyName.equals(Constants.EMPTY_STRING)) { if (position.isCollection && position.isEmptyCollection()) { position.setKeyName(keyName); startEmptyCollection(); } else { newLevel.setKeyName(keyName); } } position = newLevel; isLastEventStart = true; } }
@Override public void openStartElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver) { super.openStartElement(xPathFragment, namespaceResolver); if(position != null){ T newLevel = createNewLevel(false, position); if(isLastEventStart){ //this means 2 startevents in a row so the last this is a complex object setComplex(position, true); } String keyName = getKeyName(xPathFragment); if(position.isCollection && position.isEmptyCollection() ){ position.setKeyName(keyName); startEmptyCollection(); }else{ newLevel.setKeyName(keyName); } position = newLevel; isLastEventStart = true; } }
protected void startRootObject(){ super.startRootObject(); position.setKeyName(rootKeyName); setComplex(position, true); }
protected void startRootObject(){ super.startRootObject(); position.setKeyName(rootKeyName); setComplex(position, true); }