docs: public String processInterfaceOperationType(TDefinitions descriptionType, String interfaceName, TOperation interfaceOperationType, boolean addAddress)
      {
          String name = interfaceOperationType.getName();
          TParam messageIn = null;
          TParam messageOut = null;
          TParam messageFault = null;
          
          for (Object nextElement : interfaceOperationType.getRest())
          {
              Object inputOrOutputType = null;
              if (nextElement instanceof JAXBElement)
                  inputOrOutputType = ((JAXBElement)nextElement).getValue();
              if (inputOrOutputType instanceof TParam)
              {
                  String strName = ((JAXBElement)nextElement).getName().getLocalPart();
                  if ("Input".equalsIgnoreCase(strName))
                      messageIn = (TParam)inputOrOutputType;
                  else if ("Output".equalsIgnoreCase(strName))
                      messageOut = (TParam)inputOrOutputType;
                  else
                      messageFault = (TParam)inputOrOutputType;
              }
          }
          
          TBinding binding = this.getBindingFromInterfaceName(descriptionType, interfaceName);
          
          String address = this.getServiceEndpointFromInterfaceNBinding(descriptionType, name, binding);
          boolean bIsSafe = true;
          // Note: Here I should probably go through the types and find the type, but I just do the quick and dirty
          String element = this.getElementNameFromMessageName(descriptionType, messageIn);
          String elementOut = this.getElementNameFromMessageName(descriptionType, messageOut);
          
          this.updateMessageProcessInfo(element, elementOut, null, bIsSafe, addAddress ? address : null);
          
          return address;
      }