class WebServiceMeta extends BaseTransformMeta implements ITransformMeta<WebService, WebServiceData> {

  @Override
  public void getFields( IRowMeta r, String name, IRowMeta[] info, TransformMeta nextTransform,
                         IVariables variables, IHopMetadataProvider metadataProvider ) throws HopTransformException {
    // Input rows and output rows are different in the webservice transform
    //
    if ( !isPassingInputData() ) {
      r.clear();
    }

    // Add the output fields...
    //
    for ( WebServiceField field : getFieldsOut() ) {
      int valueType = field.getType();

      // If the type is unrecognized we give back the XML as a String...
      //
      if ( field.getType() == IValueMeta.TYPE_NONE ) {
        valueType = IValueMeta.TYPE_STRING;
      }

      try {
        IValueMeta vValue = ValueMetaFactory.createValueMeta( field.getName(), valueType );
        vValue.setOrigin( name );
        r.addValueMeta( vValue );
      } catch ( Exception e ) {
        throw new HopTransformException( e );
      }
    }
  }

  public  WebServiceMeta();
  public  WebServiceMeta( Node transformNode, IHopMetadataProvider metadataProvider );

}