浏览代码

Merge pull request #3482 from afishbeck/querymain_webserviceinfo

HPCC-7997 Fix retrieveWebServicesInfo support for QueryMainDefinition

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
Gavin Halliday 12 年之前
父节点
当前提交
23ed532f7a
共有 2 个文件被更改,包括 16 次插入5 次删除
  1. 15 5
      ecl/hql/hqlesp.cpp
  2. 1 0
      ecl/hql/hqlesp.hpp

+ 15 - 5
ecl/hql/hqlesp.cpp

@@ -404,12 +404,8 @@ bool retrieveWebServicesInfo(IWorkUnit *workunit, const char * queryText, HqlLoo
     return true;
 }
 
-
-IPropertyTree * retrieveWebServicesInfo(const char * queryText, HqlLookupContext & ctx)
+IPropertyTree * retrieveWebServicesInfo(WebServicesExtractor &extractor, HqlLookupContext & ctx)
 {
-    WebServicesExtractor extractor(ctx);
-    extractor.addRootText(queryText);
-
     if (!extractor.extractWebServiceInfo())
         return NULL;
 
@@ -426,3 +422,17 @@ IPropertyTree * retrieveWebServicesInfo(const char * queryText, HqlLookupContext
     result->setPropInt("@crc", extractor.getVersion());
     return result.getClear();
 }
+
+IPropertyTree * retrieveWebServicesInfo(const char * queryText, HqlLookupContext & ctx)
+{
+    WebServicesExtractor extractor(ctx);
+    extractor.addRootText(queryText);
+    return retrieveWebServicesInfo(extractor, ctx);
+}
+
+IPropertyTree * retrieveMainWebServicesInfo(const char * mainDefinition, HqlLookupContext & ctx)
+{
+    WebServicesExtractor extractor(ctx);
+    extractor.addRootReference(mainDefinition);
+    return retrieveWebServicesInfo(extractor, ctx);
+}

+ 1 - 0
ecl/hql/hqlesp.hpp

@@ -22,5 +22,6 @@
 extern HQL_API bool retrieveWebServicesInfo(IWorkUnit *workunit, HqlLookupContext & ctx);
 extern HQL_API bool retrieveWebServicesInfo(IWorkUnit *workunit, const char * queryText, HqlLookupContext & ctx);
 extern HQL_API IPropertyTree * retrieveWebServicesInfo(const char * queryText, HqlLookupContext & ctx);
+extern HQL_API IPropertyTree * retrieveMainWebServicesInfo(const char * mainDefinition, HqlLookupContext & ctx);
 
 #endif