Changeset 1450


Ignore:
Timestamp:
03/27/09 14:31:57 (10 years ago)
Author:
kgrading
Message:

first implementation (#547)

Location:
trunk/sources
Files:
2 added
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Hive.Client.Communication/HeuristicLab.Hive.Client.Communication.csproj

    r1449 r1450  
    128128    <None Include="Service References\ServerService\HeuristicLab.Hive.Contracts.BusinessObjects1.xsd" />
    129129    <None Include="Service References\ServerService\HeuristicLab.Hive.Contracts1.xsd" />
     130    <None Include="Service References\ServerService\HeuristicLab.PluginInfrastructure.xsd" />
    130131    <None Include="Service References\ServerService\Reference.svcmap">
    131132      <Generator>WCF Proxy Generator</Generator>
  • trunk/sources/HeuristicLab.Hive.Client.Communication/Service References/ServerService/HeuristicLab.Hive.Contracts1.xsd

    r1449 r1450  
    33  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    44  <xs:import namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.Hive.Contracts.BusinessObjects" />
     5  <xs:import namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" />
    56  <xs:complexType name="Response">
    67    <xs:sequence>
     
    7172      <xs:extension base="tns:Response">
    7273        <xs:sequence>
    73           <xs:element minOccurs="0" name="Plugins" nillable="true" type="xs:base64Binary" />
     74          <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" minOccurs="0" name="Plugins" nillable="true" type="q2:ArrayOfCachedPlugin" />
    7475        </xs:sequence>
    7576      </xs:extension>
  • trunk/sources/HeuristicLab.Hive.Client.Communication/Service References/ServerService/Reference.cs

    r1449 r1450  
    8585       
    8686        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IClientCommunicator/SendPlugins", ReplyAction="http://tempuri.org/IClientCommunicator/SendPluginsResponse")]
    87         HeuristicLab.Hive.Contracts.ResponsePlugin SendPlugins(string[] pluginList);
     87        HeuristicLab.Hive.Contracts.ResponsePlugin SendPlugins(HeuristicLab.PluginInfrastructure.PluginInfo[] pluginList);
    8888       
    8989        [System.ServiceModel.OperationContractAttribute(AsyncPattern=true, Action="http://tempuri.org/IClientCommunicator/SendPlugins", ReplyAction="http://tempuri.org/IClientCommunicator/SendPluginsResponse")]
    90         System.IAsyncResult BeginSendPlugins(string[] pluginList, System.AsyncCallback callback, object asyncState);
     90        System.IAsyncResult BeginSendPlugins(HeuristicLab.PluginInfrastructure.PluginInfo[] pluginList, System.AsyncCallback callback, object asyncState);
    9191       
    9292        HeuristicLab.Hive.Contracts.ResponsePlugin EndSendPlugins(System.IAsyncResult result);
     
    702702        }
    703703       
    704         public HeuristicLab.Hive.Contracts.ResponsePlugin SendPlugins(string[] pluginList) {
     704        public HeuristicLab.Hive.Contracts.ResponsePlugin SendPlugins(HeuristicLab.PluginInfrastructure.PluginInfo[] pluginList) {
    705705            return base.Channel.SendPlugins(pluginList);
    706706        }
    707707       
    708708        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
    709         public System.IAsyncResult BeginSendPlugins(string[] pluginList, System.AsyncCallback callback, object asyncState) {
     709        public System.IAsyncResult BeginSendPlugins(HeuristicLab.PluginInfrastructure.PluginInfo[] pluginList, System.AsyncCallback callback, object asyncState) {
    710710            return base.Channel.BeginSendPlugins(pluginList, callback, asyncState);
    711711        }
     
    717717       
    718718        private System.IAsyncResult OnBeginSendPlugins(object[] inValues, System.AsyncCallback callback, object asyncState) {
    719             string[] pluginList = ((string[])(inValues[0]));
     719            HeuristicLab.PluginInfrastructure.PluginInfo[] pluginList = ((HeuristicLab.PluginInfrastructure.PluginInfo[])(inValues[0]));
    720720            return this.BeginSendPlugins(pluginList, callback, asyncState);
    721721        }
     
    734734        }
    735735       
    736         public void SendPluginsAsync(string[] pluginList) {
     736        public void SendPluginsAsync(HeuristicLab.PluginInfrastructure.PluginInfo[] pluginList) {
    737737            this.SendPluginsAsync(pluginList, null);
    738738        }
    739739       
    740         public void SendPluginsAsync(string[] pluginList, object userState) {
     740        public void SendPluginsAsync(HeuristicLab.PluginInfrastructure.PluginInfo[] pluginList, object userState) {
    741741            if ((this.onBeginSendPluginsDelegate == null)) {
    742742                this.onBeginSendPluginsDelegate = new BeginOperationDelegate(this.OnBeginSendPlugins);
  • trunk/sources/HeuristicLab.Hive.Client.Communication/Service References/ServerService/Reference.svcmap

    r1449 r1450  
    2929    <MetadataFile FileName="Arrays1.xsd" MetadataType="Schema" ID="53f47e2f-ca2b-4f21-9457-037e222fefaf" SourceId="1" SourceUrl="net.tcp://10.20.53.7:9000/HiveServer/mex" />
    3030    <MetadataFile FileName="System1.xsd" MetadataType="Schema" ID="6a87c5f1-b08b-4dea-b2b3-bd10a1f13d52" SourceId="1" SourceUrl="net.tcp://10.20.53.7:9000/HiveServer/mex" />
     31    <MetadataFile FileName="HeuristicLab.PluginInfrastructure.xsd" MetadataType="Schema" ID="2dafc69c-27f2-456d-80d7-303362ac8b68" SourceId="1" SourceUrl="net.tcp://10.20.53.3:9000/HiveServer/mex" />
    3132  </Metadata>
    3233  <Extensions>
  • trunk/sources/HeuristicLab.Hive.Client.Communication/Service References/ServerService/System1.xsd

    r1007 r1450  
    99  </xs:complexType>
    1010  <xs:element name="Exception" nillable="true" type="tns:Exception" />
     11  <xs:complexType name="Version">
     12    <xs:sequence>
     13      <xs:element name="_Build" type="xs:int" />
     14      <xs:element name="_Major" type="xs:int" />
     15      <xs:element name="_Minor" type="xs:int" />
     16      <xs:element name="_Revision" type="xs:int" />
     17    </xs:sequence>
     18  </xs:complexType>
     19  <xs:element name="Version" nillable="true" type="tns:Version" />
    1120</xs:schema>
  • trunk/sources/HeuristicLab.Hive.Client.Communication/Service References/ServerService/service1.wsdl

    r1449 r1450  
    2626      <xsd:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
    2727      <xsd:import namespace="http://schemas.datacontract.org/2004/07/System" />
     28      <xsd:import namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" />
    2829    </xsd:schema>
    2930  </wsdl:types>
  • trunk/sources/HeuristicLab.Hive.Client.Communication/Service References/ServerService/service2.xsd

    r1449 r1450  
    55  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    66  <xs:import namespace="http://schemas.datacontract.org/2004/07/System" />
    7   <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
     7  <xs:import namespace="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" />
    88  <xs:element name="Login">
    99    <xs:complexType>
     
    115115    <xs:complexType>
    116116      <xs:sequence>
    117         <xs:element xmlns:q19="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="pluginList" nillable="true" type="q19:ArrayOfstring" />
     117        <xs:element xmlns:q16="http://schemas.datacontract.org/2004/07/HeuristicLab.PluginInfrastructure" minOccurs="0" name="pluginList" nillable="true" type="q16:ArrayOfPluginInfo" />
    118118      </xs:sequence>
    119119    </xs:complexType>
  • trunk/sources/HeuristicLab.Hive.Client.Communication/WcfService.cs

    r1449 r1450  
    3030using HeuristicLab.Hive.Client.Common;
    3131using HeuristicLab.Hive.Client.Communication.ServerService;
     32using HeuristicLab.PluginInfrastructure;
    3233
    3334namespace HeuristicLab.Hive.Client.Communication {
     
    249250
    250251    public ResponseResultReceived SendStoredJobResultsSync(Guid clientId, Guid jobId, byte[] result, double percentage, Exception exception, bool finished) {
    251       return proxy.StoreFinishedJobResult(clientId, jobId, result, percentage, exception);
    252     }
     252      return proxy.StoreFinishedJobResult(clientId, jobId, result, percentage, exception);   
     253    }
     254
     255    public List<CachedPlugin> RequestPlugins(List<PluginInfo> requestedPlugins) {
     256      try {
     257        return proxy.SendPlugins(requestedPlugins.ToArray()).Plugins;
     258      }
     259      catch (Exception e) {
     260        HandleNetworkError(e);
     261        return null;
     262      }
     263    }
     264
    253265  }
    254266}
  • trunk/sources/HeuristicLab.Hive.Client.Core/HeuristicLab.Hive.Client.Core.csproj

    r1377 r1450  
    8484    <Compile Include="JobStorage\JobStorageInfo.cs" />
    8585    <Compile Include="JobStorage\JobStorageManager.cs" />
     86    <Compile Include="PluginCache.cs" />
    8687    <Compile Include="Properties\AssemblyInfo.cs" />
    8788    <Compile Include="Properties\Settings.Designer.cs">
Note: See TracChangeset for help on using the changeset viewer.