- codecRegistry.bindingClassEncountered(baArg.type);
- val biArg = serializePathArgument(baArg,previousQName);
- previousQName = biArg.nodeType;
- components.add(biArg);
+
+ if(!Augmentation.isAssignableFrom(baArg.type)) {
+
+ val biArg = serializePathArgument(baArg,previousQName);
+ previousQName = biArg.nodeType;
+ components.add(biArg);
+ qnamePath.add(biArg.nodeType);
+ val immutableList = ImmutableList.copyOf(qnamePath);
+ codecRegistry.putPathToClass(immutableList,baArg.type);
+ if(previousAugmentation !== null) {
+ updateAugmentationInjection(baArg.type,immutableList,previousAugmentation)
+ }
+
+ previousAugmentation = null;
+ } else {
+ previousQName = resolveQname(baArg.type);
+ previousAugmentation = baArg.type;
+ }