File: MessageContractTester.cs

package info (click to toggle)
mono 6.12.0.199%2Bdfsg-6
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 1,296,836 kB
  • sloc: cs: 11,181,803; xml: 2,850,076; ansic: 699,709; cpp: 123,344; perl: 59,361; javascript: 30,841; asm: 21,853; makefile: 20,405; sh: 15,009; python: 4,839; pascal: 925; sql: 859; sed: 16; php: 1
file content (73 lines) | stat: -rw-r--r-- 1,653 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Serialization;
using System.ServiceModel.Description;
using System.ServiceModel;

namespace MonoTests.Features.Contracts
{
	[ServiceContract (Namespace = "http://MonoTests.Features.Contracts")]
	public interface IMessageContractTesterContract
	{
		[OperationContract (Action = "http://test/TestMessage_action", ReplyAction = "http://test/TestMessage_action")]
		TestMessage FormatDate (TestMessage testMessage);
	}

	[MessageContract]
	public class TestMessage
	{
		private string formatString;
		private DateTime date;
		private string formattedDate;

		public TestMessage () 
		{
		}

		public TestMessage (DateTime date, string formatString, string formattedDate)
		{
			this.date = date;
			this.formatString = formatString;
			this.formattedDate = formattedDate;
		}

		public TestMessage (TestMessage message)
		{
			this.date = message.date;
			this.formatString = message.formatString;
			this.formattedDate = message.formattedDate;
		}

		[MessageHeader]
		public string FormatString
		{
			get { return formatString; }
			set { formatString = value; }
		}

		[MessageBodyMember]
		public DateTime Date
		{
			get { return date; }
			set { date = value; }
		}

		[MessageBodyMember]
		public string FormattedDate
		{
			get { return formattedDate; }
			set { formattedDate = value; }
		}
	}

	public class MessageContractTester : IMessageContractTesterContract
	{
		public TestMessage FormatDate (TestMessage testMessage)
		{
			TestMessage r = new TestMessage (testMessage);
			r.FormattedDate = r.Date.ToString (r.FormatString);
			return r;
		}
	}
}