internal SdkMessageResponse ToSdk(SdkMessage sdk)
 {
     var response = new SdkMessageResponse(Id);
     foreach (var field in ResponseFields)
     {
         response.ResponseFields[field.Key] = field.Value;
     }
     return response;
 }
 public MetadataResponse(SdkMessageResponse request)
 {
     Id = request.Id;
     ResponseFields = new Dictionary<int, MetadataResponseField>();
     foreach (var field in request.ResponseFields)
     {
         ResponseFields[field.Key] = new MetadataResponseField(field.Value);
     }
 }
Ejemplo n.º 3
0
 internal void Fill(Result result)
 {
     if (result.SdkMessageRequestId != Guid.Empty)
     {
         if (Request == null)
         {
             Request = new SdkMessageRequest(this, result.SdkMessageRequestId, result.SdkMessageRequestName);
         }
         Request.Fill(result);
     }
     if (result.SdkMessageResponseId != Guid.Empty)
     {
         if (Response == null)
         {
             Response = new SdkMessageResponse(result.SdkMessageResponseId);
         }
         Response.Fill(result);
     }
 }
Ejemplo n.º 4
0
 public String GetNameForResponseField(
     SdkMessageResponse response, SdkMessageResponseField responseField,
     IServiceProvider services)
 {
     return DefaultNamingService.GetNameForResponseField(
         response, responseField, services);
 }
Ejemplo n.º 5
0
 static CodeMemberProperty BuildResponseField(SdkMessageResponse response, SdkMessageResponseField field, ServiceProvider serviceProvider)
 {
     Trace.TraceInformation("Entering {0}", new object[] {MethodBase.GetCurrentMethod().Name});
     var typeForResponseField = serviceProvider.TypeMappingService.GetTypeForResponseField(field, serviceProvider);
     var property = PropertyGet(typeForResponseField, serviceProvider.NamingService.GetNameForResponseField(response, field, serviceProvider), new CodeStatement[0]);
     property.HasSet = false;
     property.HasGet = true;
     property.GetStatements.Add(BuildResponseFieldGetStatement(field, typeForResponseField));
     Trace.TraceInformation("Exiting {0}: {1}.Response Property {2} defined", new object[] {MethodBase.GetCurrentMethod().Name, response.Id, property.Name});
     return property;
 }
Ejemplo n.º 6
0
 CodeGenerationType ICodeGenerationService.GetTypeForResponseField(SdkMessageResponse response, SdkMessageResponseField responseField, IServiceProvider services)
 {
     return CodeGenerationType.Property;
 }
Ejemplo n.º 7
0
 static CodeTypeDeclaration BuildMessageResponse(SdkMessagePair messagePair, SdkMessageResponse sdkMessageResponse, ServiceProvider serviceProvider)
 {
     Trace.TraceInformation("Entering {0}", new object[] {MethodBase.GetCurrentMethod().Name});
     var declaration = Class(string.Format(CultureInfo.InvariantCulture, "{0}{1}", new object[] {serviceProvider.NamingService.GetNameForMessagePair(messagePair, serviceProvider), ResponseClassSuffix}), ResponseClassBaseType, new[] {Attribute(typeof (DataContractAttribute), new[] {AttributeArg("Namespace", messagePair.MessageNamespace)}), Attribute(typeof (ResponseProxyAttribute), new[] {AttributeArg(null, messagePair.Request.Name)})});
     declaration.Members.Add(Constructor(new CodeExpression[0]));
     if ((sdkMessageResponse != null) && ((sdkMessageResponse.ResponseFields != null) & (sdkMessageResponse.ResponseFields.Count > 0)))
     {
         foreach (var field in sdkMessageResponse.ResponseFields.Values)
         {
             declaration.Members.Add(BuildResponseField(sdkMessageResponse, field, serviceProvider));
         }
     }
     else
     {
         Trace.TraceInformation("SDK Response Class {0} has not fields", new object[] {declaration.Name});
     }
     Trace.TraceInformation("Exiting {0}: SDK Response Class {1} defined", new object[] {MethodBase.GetCurrentMethod().Name, declaration.Name});
     return declaration;
 }
Ejemplo n.º 8
0
 string INamingService.GetNameForResponseField(SdkMessageResponse response, SdkMessageResponseField responseField, IServiceProvider services)
 {
     if (_knowNames.ContainsKey(response.Id.ToString() + responseField.Index.ToString(CultureInfo.InvariantCulture)))
     {
         return _knowNames[response.Id.ToString() + responseField.Index.ToString(CultureInfo.InvariantCulture)];
     }
     var str = CreateValidName(responseField.Name);
     _knowNames.Add(response.Id.ToString() + responseField.Index.ToString(CultureInfo.InvariantCulture), str);
     return str;
 }
 public CodeGenerationType GetTypeForResponseField(SdkMessageResponse response, SdkMessageResponseField responseField, IServiceProvider services)
 {
     return GetTypeForResponseFieldInternal(response, responseField, services);
 }
 protected virtual CodeGenerationType GetTypeForResponseFieldInternal(SdkMessageResponse response, SdkMessageResponseField responseField, IServiceProvider services)
 {
     return _defaultService.GetTypeForResponseField(response, responseField, services);
 }