Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Importing the non-functional parts of ServiceStack here

  • Loading branch information...
commit a3b4766ea99b719943c6471f6dcc28422342f794 0 parents
Demis Bellot mythz authored
Showing with 19,100 additions and 0 deletions.
  1. +16 −0 Deploy/rsync-html.sh
  2. +35 −0 Deploy/rsync-servicestack.sh
  3. +6 −0 Deploy/test.sh
  4. BIN  ProjectTemplates/Template.UtopiaService/Lib/Db4objects.Db4o.NativeQueries.dll
  5. BIN  ProjectTemplates/Template.UtopiaService/Lib/Db4objects.Db4o.dll
  6. BIN  ProjectTemplates/Template.UtopiaService/Lib/Enyim.Caching.dll
  7. BIN  ProjectTemplates/Template.UtopiaService/Lib/MemcachedProviders.dll
  8. BIN  ProjectTemplates/Template.UtopiaService/Lib/Moq.dll
  9. BIN  ProjectTemplates/Template.UtopiaService/Lib/ServiceStack.Interfaces.dll
  10. BIN  ProjectTemplates/Template.UtopiaService/Lib/ServiceStack.Translators.Generator.exe
  11. BIN  ProjectTemplates/Template.UtopiaService/Lib/ServiceStack.dll
  12. +1 −0  ProjectTemplates/Template.UtopiaService/Lib/_get-latest-libs.bat
  13. BIN  ProjectTemplates/Template.UtopiaService/Lib/log4net.dll
  14. BIN  ProjectTemplates/Template.UtopiaService/Lib/nunit.framework.dll
  15. BIN  ProjectTemplates/Template.UtopiaService/Lib/nunit.framework.extensions.dll
  16. +18 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/Entity.cs
  17. +51 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ErrorCodes.cs
  18. +12 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ModelBase.cs
  19. +6 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ModelName.cs
  20. +36 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/Properties/AssemblyInfo.cs
  21. +74 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ServiceNamespace.DomainModel.csproj
  22. +79 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/AppHost.cs
  23. BIN  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/App_Data/DatabaseName.db4o
  24. +1 −0  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Global.asax
  25. +44 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Global.asax.cs
  26. +36 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Properties/AssemblyInfo.cs
  27. +1 −0  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap11/AsyncOneWay.svc
  28. +1 −0  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap11/SyncReply.svc
  29. +1 −0  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap12/AsyncOneWay.svc
  30. +1 −0  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap12/SyncReply.svc
  31. +140 −0 ...ctTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/ServiceNamespace.Host.WebService.csproj
  32. +216 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Web.config
  33. +9 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Commands/IAction.cs
  34. +30 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Commands/LogicCommandBase.cs
  35. +54 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/DatabaseNameOperationContext.cs
  36. +36 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Properties/AssemblyInfo.cs
  37. +89 −0 ...Templates/Template.UtopiaService/ServiceNamespace.ServiceInterface/ServiceNamespace.ServiceInterface.csproj
  38. +8 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/ServiceResolver.cs
  39. +17 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Version100/GetModelNamesHandler.cs
  40. +15 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Version100/HandlerBase.cs
  41. +62 −0 ...Template.UtopiaService/ServiceNamespace.ServiceInterface/Version100/Translators/ResponseStatusTranslator.cs
  42. +36 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Properties/AssemblyInfo.cs
  43. +9 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/ServiceModelFinder.cs
  44. +92 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/ServiceNamespace.ServiceModel.csproj
  45. +24 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/GetModelNames.cs
  46. +30 −0 ...mplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/GetModelNamesResponse.cs
  47. +25 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/StoreModelName.cs
  48. +35 −0 ...plates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/StoreModelNameResponse.cs
  49. +13 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ArrayOfGuidId.cs
  50. +22 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ArrayOfIntId.cs
  51. +22 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ArrayOfStringId.cs
  52. +13 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ModelName.cs
  53. +38 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ModelName.generated.cs
  54. +12 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/Properties.cs
  55. +11 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/Property.cs
  56. +15 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ResponseError.cs
  57. +28 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ResponseStatus.cs
  58. +8 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/genetate-translators.bat
  59. +36 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/Properties/AssemblyInfo.cs
  60. +95 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/ServiceNamespace.Tests.csproj
  61. +44 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/Support/TestBase.cs
  62. +5 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/app.config
  63. +61 −0 ProjectTemplates/Template.UtopiaService/ServiceNamespace.sln
  64. +4 −0 ProjectTemplates/generate-db4o.bat
  65. +3 −0  ProjectTemplates/generate-nhibernate.bat
  66. +4 −0 ProjectTemplates/generate-utopia.bat
  67. +63 −0 ProjectTemplates/import/import.build
  68. +4 −0 ProjectTemplates/import/import.db4o.bat
  69. +13 −0 ProjectTemplates/import/import.db4o.properties
  70. +3 −0  ProjectTemplates/import/import.nhibernate.bat
  71. +13 −0 ProjectTemplates/import/import.nhibernate.properties
  72. +12 −0 ProjectTemplates/nant.bat
  73. +53 −0 ProjectTemplates/template.build
  74. +12 −0 ProjectTemplates/template.db4o.properties
  75. +12 −0 ProjectTemplates/template.nhibernate.properties
  76. +40 −0 ProjectTemplates/template.utopia.db4o.properties
  77. BIN  Tools/7za.exe
  78. BIN  Tools/ILMerge.exe
  79. +35 −0 Tools/Reflector.cfg
  80. BIN  Tools/Reflector.exe
  81. +18 −0 Tools/Reflector.exe.config
  82. +340 −0 Tools/nant/COPYING.txt
  83. +144 −0 Tools/nant/README.txt
  84. +2,491 −0 Tools/nant/schema/nant.xsd
  85. +3 −0  Tools/replace-all/nant.bat
  86. +2,491 −0 Tools/replace-all/nant/schema/nant.xsd
  87. +38 −0 Tools/replace-all/replace-all.build
  88. +8 −0 Tools/replace-all/replace-all.properties
  89. BIN  art/logo/avatar.png
  90. BIN  art/logo/avatar.psd
  91. BIN  art/logo/demo-logo-ajaxstack.png
  92. BIN  art/logo/demo-logo-servicestack.png
  93. BIN  art/logo/logo-ajaxstack.png
  94. BIN  art/logo/logo-servicestack.png
  95. BIN  art/logo/logo.psd
  96. BIN  art/logo/small-logo-ajaxstack.png
  97. BIN  art/logo/small-logo-servicestack.png
  98. BIN  art/logo/small-logo.psd
  99. BIN  doc/UsageExamples/Lib/wget.exe
  100. +36 −0 doc/UsageExamples/Properties/AssemblyInfo.cs
  101. +10 −0 doc/UsageExamples/Properties/DataSources/Sakila.ServiceModel.Version100.Types.Customer.datasource
  102. +10 −0 doc/UsageExamples/Properties/DataSources/Sakila.ServiceModel.Version100.Types.ResponseStatus.datasource
  103. +3 −0  doc/UsageExamples/README.txt
  104. +812 −0 doc/UsageExamples/Service References/BasicHttpClientProxy/Reference.cs
  105. +29 −0 doc/UsageExamples/Service References/BasicHttpClientProxy/Reference.svcmap
  106. +10 −0 ...Service References/BasicHttpClientProxy/ServiceStack.UsageExamples.BasicHttpClientProxy.Customer.datasource
  107. +10 −0 ...rvice References/BasicHttpClientProxy/ServiceStack.UsageExamples.BasicHttpClientProxy.Properties.datasource
  108. +10 −0 ...e References/BasicHttpClientProxy/ServiceStack.UsageExamples.BasicHttpClientProxy.ResponseStatus.datasource
  109. +216 −0 doc/UsageExamples/Service References/BasicHttpClientProxy/Soap11.wsdl
  110. +12 −0 doc/UsageExamples/Service References/BasicHttpClientProxy/configuration.svcinfo
  111. +359 −0 doc/UsageExamples/Service References/BasicHttpClientProxy/configuration91.svcinfo
  112. +812 −0 doc/UsageExamples/Service References/WsHttpClientProxy/Reference.cs
  113. +29 −0 doc/UsageExamples/Service References/WsHttpClientProxy/Reference.svcmap
  114. +10 −0 ...mples/Service References/WsHttpClientProxy/ServiceStack.UsageExamples.WsHttpClientProxy.Customer.datasource
  115. +10 −0 ...les/Service References/WsHttpClientProxy/ServiceStack.UsageExamples.WsHttpClientProxy.Properties.datasource
  116. +10 −0 ...Service References/WsHttpClientProxy/ServiceStack.UsageExamples.WsHttpClientProxy.ResponseStatus.datasource
  117. +216 −0 doc/UsageExamples/Service References/WsHttpClientProxy/Soap12.wsdl
  118. +12 −0 doc/UsageExamples/Service References/WsHttpClientProxy/configuration.svcinfo
  119. +365 −0 doc/UsageExamples/Service References/WsHttpClientProxy/configuration91.svcinfo
  120. +164 −0 doc/UsageExamples/ServiceStack.UsageExamples.csproj
  121. +5 −0 doc/UsageExamples/ServiceStack.UsageExamples.csproj.user
  122. +51 −0 doc/UsageExamples/Support/TestBase.cs
  123. +22 −0 doc/UsageExamples/Support/Translators/CustomerTranslator.cs
  124. +33 −0 doc/UsageExamples/UsingBasicHttpServiceReferenceClient.cs
  125. +103 −0 doc/UsageExamples/UsingDtoFromAssembly.cs
  126. +41 −0 doc/UsageExamples/UsingDtoFromXsd.cs
  127. +152 −0 doc/UsageExamples/UsingRawHttpClient.cs
  128. +55 −0 doc/UsageExamples/UsingRestAndJson.cs
  129. +55 −0 doc/UsageExamples/UsingRestAndXml.cs
  130. +66 −0 doc/UsageExamples/UsingServiceClients.cs
  131. +33 −0 doc/UsageExamples/UsingServiceReferenceClient.cs
  132. +49 −0 doc/UsageExamples/UsingSvcutilGeneratedClient.cs
  133. +79 −0 doc/UsageExamples/app.config
  134. +9 −0 doc/UsageExamples/svc/GenerateSvcProxy.bat
  135. +243 −0 doc/UsageExamples/svc/Service.wsdl
  136. +802 −0 doc/UsageExamples/svc/SvcSyncReplyClient.cs
  137. +43 −0 doc/UsageExamples/svc/output.config
  138. +13 −0 doc/UsageExamples/xsd/GenerateDto.bat
  139. +120 −0 doc/UsageExamples/xsd/ServiceTypes.xsd
  140. +6 −0 doc/UsageExamples/xsd/WcfCollectionTypes.xsd
  141. +42 −0 doc/UsageExamples/xsd/WcfDataTypes.xsd
  142. +893 −0 doc/UsageExamples/xsd/XsdDto.cs
  143. +5 −0 html/.idea/encodings.xml
  144. +9 −0 html/.idea/html.iml
  145. +11 −0 html/.idea/misc.xml
  146. +9 −0 html/.idea/modules.xml
  147. +7 −0 html/.idea/vcs.xml
  148. +203 −0 html/.idea/workspace.xml
  149. BIN  html/architecture.odp
  150. +85 −0 html/benchmarks/NorthwindDatabaseRowsSerialization.100000-times.2010-08-17.html
  151. +85 −0 html/benchmarks/NorthwindDatabaseRowsSerialization.1000000-times.2010-02-06.html
  152. +85 −0 html/benchmarks/NorthwindDatabaseTablesSerialization.10000-times.2010-02-06.html
  153. +105 −0 html/benchmarks/default.css
  154. BIN  html/bg-body-large.png
  155. BIN  html/bg-body.png
  156. BIN  html/btn-download.gif
  157. BIN  html/btn-github.pdn
  158. BIN  html/btn-github.png
  159. BIN  html/btn-googlecode - Copy.png
  160. BIN  html/btn-googlecode.pdn
  161. BIN  html/btn-googlecode.png
  162. BIN  html/btn-subcomponent.pdn
  163. BIN  html/btn-subcomponent.png
  164. +12 −0 html/clientaccesspolicy.xml
  165. +8 −0 html/crossdomain.xml
  166. +253 −0 html/default.css
  167. +192 −0 html/default.htm
  168. BIN  html/detailed-overview.png
  169. BIN  html/logo-servicestack-demo.png
  170. BIN  html/logo-servicestack-old.png
  171. BIN  html/logo-servicestack.old.png
  172. BIN  html/logo-servicestack.png
  173. BIN  html/logo.png
  174. +86 −0 html/overview.htm
  175. BIN  html/page-metadata.png
  176. BIN  html/runson-mono-net-small.png
  177. BIN  html/runson-mono-net.png
  178. BIN  html/servicestack-logo.pdn
  179. BIN  html/small-logo-ajaxstack.png
  180. BIN  html/small-logo-servicestack.png
  181. BIN  html/ss-overview - Copy.png
  182. BIN  html/ss-overview.png
  183. +37 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteControlClient/Main.cs
  184. +184 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteControlClient/MainWindow.xib
  185. +15 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteControlClient/MainWindow.xib.designer.cs
  186. +92 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteControlClient/RemoteControlClient.csproj
  187. +60 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteControlClient/SimpleUseCase.cs
  188. +29 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfo.Client.sln
  189. +24 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfo.Client.userprefs
  190. +37 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfo.MonoTouchClient.sln
  191. +33 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfo.MonoTouchClient.userprefs
  192. +19 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/AppConfig.cs
  193. +40 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/Main.cs
  194. +407 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/MainWindow.xib
  195. +58 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/MainWindow.xib.designer.cs
  196. +153 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/RemoteFilesTableViewController.cs
  197. +96 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/RemoteInfoClient.csproj
  198. BIN  src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/RemoteInfoClient.pidb
  199. +51 −0 src/MonoTouch.Examples/RemoteInfo/Client/RemoteInfoClient/ViewTextFileController.cs
  200. BIN  src/MonoTouch.Examples/RemoteInfo/Client/lib/RemoteInfo.ServiceModel.dll
  201. BIN  src/MonoTouch.Examples/RemoteInfo/Client/lib/ServiceStack.Client.dll
  202. BIN  src/MonoTouch.Examples/RemoteInfo/Server/Lib/ServiceStack.Interfaces.dll
  203. BIN  src/MonoTouch.Examples/RemoteInfo/Server/Lib/ServiceStack.dll
  204. +212 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.4.5.resharper.user
  205. +24 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Console/App.config
  206. +43 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Console/AppHost.cs
  207. +18 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Console/Program.cs
  208. +36 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Console/Properties/AssemblyInfo.cs
  209. +73 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Console/RemoteInfo.Host.Console.csproj
  210. +37 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/AppHost.cs
  211. BIN  src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/App_Data/exampledb.db4o
  212. +16 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Default.aspx
  213. +17 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Default.aspx.cs
  214. +18 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Default.aspx.designer.cs
  215. +1 −0  src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Global.asax
  216. +45 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Global.asax.cs
  217. +35 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Properties/AssemblyInfo.cs
  218. +1 −0  src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Public/Soap11/AsyncOneWay.svc
  219. +1 −0  src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Public/Soap11/SyncReply.svc
  220. +1 −0  src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Public/Soap12/AsyncOneWay.svc
  221. +1 −0  src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Public/Soap12/SyncReply.svc
  222. +125 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/RemoteInfo.Host.Web.csproj
  223. +194 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Web.config
  224. +182 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Web.config.rename_for_iis7
  225. +194 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Host.Web/Web.config.rename_for_mono_iis6
  226. +75 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceInterface/GetDirectoryInfoHandler.cs
  227. +39 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceInterface/GetTextFileHandler.cs
  228. +36 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceInterface/Properties/AssemblyInfo.cs
  229. +72 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceInterface/RemoteInfo.ServiceInterface.csproj
  230. +44 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceInterface/RemoteInfoConfig.cs
  231. +31 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceModel/Operations/GetDirectoryInfo.cs
  232. +28 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceModel/Operations/GetTextFile.cs
  233. +36 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceModel/Properties/AssemblyInfo.cs
  234. +63 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceModel/RemoteInfo.ServiceModel.csproj
  235. +14 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceModel/Types/DirectoryResult.cs
  236. +20 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.ServiceModel/Types/FileResult.cs
  237. +76 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Tests.ConsoleClient/Program.cs
  238. +36 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Tests.ConsoleClient/Properties/AssemblyInfo.cs
  239. +65 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.Tests.ConsoleClient/RemoteInfo.Tests.ConsoleClient.csproj
  240. +70 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.sln
  241. +40 −0 src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.userprefs
  242. +2 −0  src/MonoTouch.Examples/RemoteInfo/Server/RemoteInfo.usertasks
  243. BIN  src/MonoTouch.Examples/html/css/bg-body-large.png
  244. +244 −0 src/MonoTouch.Examples/html/css/default.css
  245. BIN  src/MonoTouch.Examples/html/css/logo-servicestack.png
  246. +121 −0 src/MonoTouch.Examples/html/css/remoteinfo.css
  247. +8 −0 src/MonoTouch.Examples/html/default.htm
  248. BIN  src/MonoTouch.Examples/html/img/AppHost-cs.png
  249. BIN  src/MonoTouch.Examples/html/img/DirectoryResult-dto.png
  250. BIN  src/MonoTouch.Examples/html/img/FileResult-dto.png
  251. BIN  src/MonoTouch.Examples/html/img/GetDirectoryInfo-op.png
  252. BIN  src/MonoTouch.Examples/html/img/GetTextFile-dto.png
  253. BIN  src/MonoTouch.Examples/html/img/GetTextFile-handler.png
  254. BIN  src/MonoTouch.Examples/html/img/GetTextFile-rest.png
  255. BIN  src/MonoTouch.Examples/html/img/LinuxApacheIcon.gif
  256. BIN  src/MonoTouch.Examples/html/img/MonoDevelop-icon.png
  257. BIN  src/MonoTouch.Examples/html/img/MonoTouch vs ServiceStack.psd
  258. BIN  src/MonoTouch.Examples/html/img/MonoTouch-ServiceStack.png
  259. BIN  src/MonoTouch.Examples/html/img/MonoTouch-logo.png
  260. BIN  src/MonoTouch.Examples/html/img/RemoteInfo-sln.original.png
  261. BIN  src/MonoTouch.Examples/html/img/RemoteInfo-sln.png
  262. BIN  src/MonoTouch.Examples/html/img/RemoteInfo.Server-sln.png
  263. BIN  src/MonoTouch.Examples/html/img/ServiceStackOverview.png
  264. BIN  src/MonoTouch.Examples/html/img/ViewTextFileController-cs.png
  265. BIN  src/MonoTouch.Examples/html/img/ViewTextFileController-new.png
  266. BIN  src/MonoTouch.Examples/html/img/consoleclient-running.png
  267. BIN  src/MonoTouch.Examples/html/img/ib-UITextView.png
  268. BIN  src/MonoTouch.Examples/html/img/ib-library.png
  269. BIN  src/MonoTouch.Examples/html/img/ib-viewtextfilecontroller.png
  270. BIN  src/MonoTouch.Examples/html/img/ib-viewtextfilecontroller2.png
  271. BIN  src/MonoTouch.Examples/html/img/logo-servicestack.png
  272. BIN  src/MonoTouch.Examples/html/img/mono-logo.png
  273. BIN  src/MonoTouch.Examples/html/img/mt-AppConfig.png
  274. BIN  src/MonoTouch.Examples/html/img/mt-debug-operations.png
  275. BIN  src/MonoTouch.Examples/html/img/mt-debug-root.png
  276. BIN  src/MonoTouch.Examples/html/img/mt-debug-server.png
  277. BIN  src/MonoTouch.Examples/html/img/mt-debug-serviceinterface.png
  278. BIN  src/MonoTouch.Examples/html/img/mt-debug-servicemodel.png
  279. BIN  src/MonoTouch.Examples/html/img/net-logo.png
  280. BIN  src/MonoTouch.Examples/html/img/remote-info-sln.png
  281. BIN  src/MonoTouch.Examples/html/img/s4-screenshot-01.png
  282. BIN  src/MonoTouch.Examples/html/img/s4-screenshot-02.png
  283. BIN  src/MonoTouch.Examples/html/img/small-logo-ajaxstack.png
  284. BIN  src/MonoTouch.Examples/html/img/small-logo-servicestack.png
  285. BIN  src/MonoTouch.Examples/html/img/terminal-icon.png
  286. BIN  src/MonoTouch.Examples/html/img/tvc-datasource.png
  287. BIN  src/MonoTouch.Examples/html/img/tvc-delegate.png
  288. BIN  src/MonoTouch.Examples/html/img/tvc-delegate2.png
  289. BIN  src/MonoTouch.Examples/html/img/tvc-new-getcell.png
  290. BIN  src/MonoTouch.Examples/html/img/tvc-viewdidload.png
  291. BIN  src/MonoTouch.Examples/html/img/ws-handler.png
  292. BIN  src/MonoTouch.Examples/html/img/ws-rest-qs.png
  293. BIN  src/MonoTouch.Examples/html/img/ws-splash-xml.png
  294. BIN  src/MonoTouch.Examples/html/img/ws-splash.png
  295. BIN  src/MonoTouch.Examples/html/img/ws-splash2.png
  296. BIN  src/MonoTouch.Examples/html/img/xsp-running.png
  297. +118 −0 src/MonoTouch.Examples/html/remote-info.tmproj
  298. +171 −0 src/MonoTouch.Examples/html/remote-info/default.htm
  299. +158 −0 src/MonoTouch.Examples/html/remote-info/step2.htm
  300. +136 −0 src/MonoTouch.Examples/html/remote-info/step3.htm
Sorry, we could not display the entire diff because too many files (400) changed.
16 Deploy/rsync-html.sh
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+. ../env-vars.sh
+
+echo uploading ServiceStack/html...
+
+rsync --verbose --progress --stats --compress \
+ -e "ssh -i $SERVER_KEY" \
+ --recursive --times --perms --links \
+ $BASE_PATH/html/ $HOST_LOGIN:html/servicestack.net/
+
+rsync --verbose --progress --stats --compress \
+ -e "ssh -i $SERVER_KEY" \
+ --recursive --times --perms --links --delete \
+ --exclude ".svn" \
+ $BASE_PATH/MonoTouch.Examples/html/ $HOST_LOGIN:html/servicestack.net/monotouch
35 Deploy/rsync-servicestack.sh
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+. ../env-vars.sh
+
+rsync --verbose --progress --stats --compress \
+ -e "ssh -i $SERVER_KEY" \
+ --recursive --times --perms --links \
+ $BASE_PATH/html/ $HOST_LOGIN:html/servicestack.net/
+
+
+rsync --verbose --progress --stats --compress \
+ -e "ssh -i $SERVER_KEY" \
+ --recursive --times --perms --links \
+ --exclude ".svn" \
+ --exclude "App_Data" \
+ --exclude "obj" \
+ --exclude "Properties" \
+ --exclude "*.cs" \
+ --exclude "*.csproj*" \
+ --exclude "*.config" \
+ $BASE_PATH/ServiceStack.Examples/ServiceStack.Examples.Clients $HOST_LOGIN:mono/servicestack.net/
+
+
+rsync --verbose --progress --stats --compress \
+ -e "ssh -i $SERVER_KEY" \
+ --recursive --times --perms --links \
+ --exclude ".svn" \
+ --exclude "App_Data" \
+ --exclude "obj" \
+ --exclude "Properties" \
+ --exclude "*.cs" \
+ --exclude "*.csproj*" \
+ --exclude "*.config" \
+ $BASE_PATH/ServiceStack.Examples/ServiceStack.Examples.Host.Web $HOST_LOGIN:mono/servicestack.net/
+
6 Deploy/test.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+. ../env-vars.sh
+
+echo $SERVER_KEY
+
BIN  ProjectTemplates/Template.UtopiaService/Lib/Db4objects.Db4o.NativeQueries.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/Db4objects.Db4o.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/Enyim.Caching.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/MemcachedProviders.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/Moq.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/ServiceStack.Interfaces.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/ServiceStack.Translators.Generator.exe
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/ServiceStack.dll
Binary file not shown
1  ProjectTemplates/Template.UtopiaService/Lib/_get-latest-libs.bat
@@ -0,0 +1 @@
+COPY ..\..\Lib\* .
BIN  ProjectTemplates/Template.UtopiaService/Lib/log4net.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/nunit.framework.dll
Binary file not shown
BIN  ProjectTemplates/Template.UtopiaService/Lib/nunit.framework.extensions.dll
Binary file not shown
18 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/Entity.cs
@@ -0,0 +1,18 @@
+/*
+// $Id$
+//
+// Revision : $Revision$
+// Modified Date : $LastChangedDate$
+// Modified By : $LastChangedBy$
+//
+// (c) Copyright 2008 Digital Distribution Networks Ltd
+*/
+
+namespace @DomainModelNamespace@
+{
+ public abstract class Entity : ModelBase
+ {
+ //Make it a long so we can store the unique db4o internal id for fast access
+ public long Id { get; set; }
+ }
+}
51 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ErrorCodes.cs
@@ -0,0 +1,51 @@
+/*
+// $Id$
+//
+// Revision : $Revision$
+// Modified Date : $LastChangedDate$
+// Modified By : $LastChangedBy$
+//
+// (c) Copyright 2008 Digital Distribution Networks Ltd
+*/
+
+namespace @DomainModelNamespace@
+{
+ /// <summary>
+ /// This is called MessageCodes to be consistent with ErrorCodes
+ /// </summary>
+ public enum MessageCodes
+ {
+ NewUserCreated,
+ LoginWasSuccessful,
+ CouldNotRegisterNewUser,
+ CreditCardDetailsAreInvalid,
+ }
+
+ /// <summary>
+ /// This enum is called ErrorCodes rather that ErrorCode to avoid naming conficts with
+ /// the ValidationAttributeBase.ErrorCode field. If you can think of better names refactor!
+ /// </summary>
+ public enum ErrorCodes
+ {
+ Error, //General unspecified error
+ InvalidUserOrPassword,
+ UserAlreadyExists,
+ InvalidOrExpiredSession,
+
+ //Valdiation errors:
+ FieldIsRequired,
+ FieldsAreNotEqual,
+ PasswordsAreNotEqual,
+ EmailAddressIsNotValid,
+
+ //Credit card validation errors:
+ CreditCardNumberIsInvalid,
+ CreditCardTypeIsInvalid,
+ CreditCardHasExpired,
+ CreditCardCvvIsInvalid,
+ CreditCardHolderNameIsInvalid,
+
+ //Business rules:
+ CreditInfoIsRequiredIfStoreCreditCard,
+ }
+}
12 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ModelBase.cs
@@ -0,0 +1,12 @@
+using ServiceStack.Validation;
+
+namespace @DomainModelNamespace@
+{
+ public abstract class ModelBase
+ {
+ public virtual ValidationResult Validate()
+ {
+ return ModelValidator.ValidateObject(this);
+ }
+ }
+}
6 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ModelName.cs
@@ -0,0 +1,6 @@
+namespace @DomainModelNamespace@
+{
+ public class @ModelName@ : Entity
+ {
+ }
+}
36 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("UserCatalogue.DomainModel")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("UserCatalogue.DomainModel")]
+[assembly: AssemblyCopyright("Copyright © 2008")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("ec64bd9c-7db5-420a-a590-cf6b1a40a503")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
74 ProjectTemplates/Template.UtopiaService/ServiceNamespace.DomainModel/ServiceNamespace.DomainModel.csproj
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <@ModelName@Version>9.0.30729</@ModelName@Version>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{E6170756-E72D-4A0B-AF2F-9DFBE83F5C48}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>@DomainModelNamespace@</RootNamespace>
+ <AssemblyName>@DomainModelNamespace@</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="ServiceStack, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.dll</HintPath>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="@ModelName@.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="Entity.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="ErrorCodes.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="ModelBase.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
79 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/AppHost.cs
@@ -0,0 +1,79 @@
+using Db4objects.Db4o;
+using ServiceStack.CacheAccess.Providers;
+using ServiceStack.Configuration;
+using ServiceStack.DataAccess.Db4oProvider;
+using ServiceStack.Logging;
+using ServiceStack.Logging.Log4Net;
+using ServiceStack.LogicFacade;
+using @ServiceNamespace@.ServiceInterface;
+using ServiceStack.ServiceInterface;
+using ServiceStack.WebHost.Endpoints;
+using @ServiceModelNamespace@;
+
+namespace @ServiceNamespace@.Host.WebService
+{
+ public class AppHost : EndpointHostBase
+ {
+ public static AppHost Instance = new AppHost();
+
+ private AppHost()
+ {
+ LogManager.LogFactory = new Log4NetFactory(true);
+
+ var factory = new FactoryProvider(FactoryUtils.ObjectFactory, LogManager.LogFactory);
+ var providerManager = new Db4oFileProviderManager(Config.ConnectionString);
+
+ var configDb4o = Db4oFactory.Configure();
+ configDb4o.ActivationDepth(5);
+ configDb4o.UpdateDepth(5);
+ configDb4o.OptimizeNativeQueries(true);
+
+ factory.Register(providerManager); //Keep the manager from disposing providers it created
+ factory.Register(providerManager.GetProvider());
+
+ // Create the ApplicationContext injected with the static service implementations
+ ApplicationContext.SetInstanceContext(new ApplicationContext {
+ Factory = factory,
+ Cache = new MemoryCacheClient(),
+ Resources = new ConfigurationResourceManager(),
+ });
+
+ SetConfig(new EndpointHostConfig {
+ ServiceName = Config.ServiceName,
+ OperationsNamespace = Config.OperationNamespace,
+ ServiceModelFinder = ServiceModelFinder.Instance,
+ ServiceController = new ServiceController(new ServiceResolver()),
+ });
+ }
+
+ protected override IOperationContext CreateOperationContext(object requestDto)
+ {
+ var requestContext = new RequestContext(requestDto, new FactoryProvider(FactoryUtils.ObjectFactory));
+ return new @DatabaseName@OperationContext(ApplicationContext.Instance, requestContext);
+ }
+
+ //Access application configuration statically
+ public static class Config
+ {
+ public static string ConnectionString
+ {
+ get { return ConfigUtils.GetAppSetting("ConnectionString"); }
+ }
+
+ public static string ServiceName
+ {
+ get { return ConfigUtils.GetAppSetting("ServiceName"); }
+ }
+
+ public static string OperationNamespace
+ {
+ get { return ConfigUtils.GetAppSetting("OperationNamespace"); }
+ }
+
+ public static string ServerPrivateKey
+ {
+ get { return ConfigUtils.GetAppSetting("ServerPrivateKey"); }
+ }
+ }
+ }
+}
BIN  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/App_Data/DatabaseName.db4o
Binary file not shown
1  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Global.asax
@@ -0,0 +1 @@
+<%@ Application Codebehind="Global.asax.cs" Inherits="@ServiceNamespace@.Host.WebService.Global" Language="C#" %>
44 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Global.asax.cs
@@ -0,0 +1,44 @@
+using System;
+
+namespace @ServiceNamespace@.Host.WebService
+{
+ public class Global : System.Web.HttpApplication
+ {
+
+ protected void Application_Start(object sender, EventArgs e)
+ {
+ // Touch singletons to force static initializations
+ var touchApp = AppHost.Instance;
+ }
+
+ protected void Session_Start(object sender, EventArgs e)
+ {
+
+ }
+
+ protected void Application_BeginRequest(object sender, EventArgs e)
+ {
+
+ }
+
+ protected void Application_AuthenticateRequest(object sender, EventArgs e)
+ {
+
+ }
+
+ protected void Application_Error(object sender, EventArgs e)
+ {
+
+ }
+
+ protected void Session_End(object sender, EventArgs e)
+ {
+
+ }
+
+ protected void Application_End(object sender, EventArgs e)
+ {
+
+ }
+ }
+}
36 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("@ServiceNamespace@.Host.WebService")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("@ServiceNamespace@.Host.WebService")]
+[assembly: AssemblyCopyright("Copyright © 2008")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("55a3629d-f4bb-48d4-905f-1cfd65bf1d3e")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
1  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap11/AsyncOneWay.svc
@@ -0,0 +1 @@
+<%@ ServiceHost Language="C#" Service="ServiceStack.WebHost.Endpoints.Soap11AsyncOneWayHandler" %>
1  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap11/SyncReply.svc
@@ -0,0 +1 @@
+<%@ ServiceHost Language="C#" Service="ServiceStack.WebHost.Endpoints.Soap11SyncReplyHandler" %>
1  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap12/AsyncOneWay.svc
@@ -0,0 +1 @@
+<%@ ServiceHost Language="C#" Service="ServiceStack.WebHost.Endpoints.Soap12AsyncOneWayHandler" %>
1  ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Public/Soap12/SyncReply.svc
@@ -0,0 +1 @@
+<%@ ServiceHost Language="C#" Service="ServiceStack.WebHost.Endpoints.Soap12SyncReplyHandler" %>
140 ...emplates/Template.UtopiaService/ServiceNamespace.Host.WebService/ServiceNamespace.Host.WebService.csproj
@@ -0,0 +1,140 @@
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <@ModelName@Version>9.0.30729</@ModelName@Version>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{FAD3B057-C2E7-4FC1-8E89-ABA9B0062DDD}</ProjectGuid>
+ <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>@ServiceNamespace@.Host.WebService</RootNamespace>
+ <AssemblyName>@ServiceNamespace@.Host.WebService</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Db4objects.Db4o, Version=7.4.71.12224, Culture=neutral, PublicKeyToken=6199cd4f203aa8eb, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\Db4objects.Db4o.dll</HintPath>
+ </Reference>
+ <Reference Include="log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\log4net.dll</HintPath>
+ </Reference>
+ <Reference Include="ServiceStack, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.dll</HintPath>
+ </Reference>
+ <Reference Include="ServiceStack.Interfaces, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.Interfaces.dll</HintPath>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.EnterpriseServices" />
+ <Reference Include="System.Runtime.Serialization">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.ServiceModel">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.ServiceModel.Web">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Web" />
+ <Reference Include="System.Web.Extensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Web.Mobile" />
+ <Reference Include="System.Web.Services" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="Web.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="AppHost.cs" />
+ <Compile Include="Global.asax.cs">
+ <DependentUpon>Global.asax</DependentUpon>
+ </Compile>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="Public\Soap11\AsyncOneWay.svc" />
+ <Content Include="Public\Soap11\SyncReply.svc" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="Global.asax" />
+ <Content Include="Public\Soap12\AsyncOneWay.svc" />
+ <Content Include="Public\Soap12\SyncReply.svc" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\@DomainModelNamespace@\@DomainModelNamespace@.csproj">
+ <Project>{E6170756-E72D-4A0B-AF2F-9DFBE83F5C48}</Project>
+ <Name>@DomainModelNamespace@</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\@ServiceNamespace@.ServiceInterface\@ServiceNamespace@.ServiceInterface.csproj">
+ <Project>{5C528394-32F9-49DE-9D3C-B91281BF2C11}</Project>
+ <Name>@ServiceNamespace@.ServiceInterface</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\@ServiceModelNamespace@\@ServiceModelNamespace@.csproj">
+ <Project>{07F5006E-3F8E-4201-9A0D-1BD912FEC028}</Project>
+ <Name>@ServiceModelNamespace@</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <ItemGroup>
+ <Folder Include="App_Data\" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
+ <WebProjectProperties>
+ <UseIIS>True</UseIIS>
+ <AutoAssignPort>True</AutoAssignPort>
+ <DevelopmentServerPort>51404</DevelopmentServerPort>
+ <DevelopmentServerVPath>/</DevelopmentServerVPath>
+ <IISUrl>http://localhost/@ServiceNamespace@.Host.WebService</IISUrl>
+ <NTLMAuthentication>False</NTLMAuthentication>
+ <UseCustomServer>False</UseCustomServer>
+ <CustomServerUrl>
+ </CustomServerUrl>
+ <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
+ </WebProjectProperties>
+ </FlavorProperties>
+ </VisualStudio>
+ </ProjectExtensions>
+</Project>
216 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Host.WebService/Web.config
@@ -0,0 +1,216 @@
+<?xml version="1.0"?>
+<!--
+ Note: As an alternative to hand editing this file you can use the
+ web admin tool to configure settings for your application. Use
+ the Website->Asp.Net Configuration option in Visual Studio.
+ A full list of settings and comments can be found in
+ machine.config.comments usually located in
+ \Windows\Microsoft.Net\Framework\v2.x\Config
+-->
+<configuration>
+ <configSections>
+ <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
+ <section name="objects" type="ServiceStack.Configuration.ObjectsConfigurationSectionHandler, ServiceStack" />
+
+ <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
+ <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
+ <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
+ <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
+ <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
+ </sectionGroup>
+ </sectionGroup>
+ </sectionGroup>
+ </configSections>
+
+ <appSettings>
+ <add key="ServiceName" value="@DatabaseName@" />
+ <add key="OperationNamespace" value="@ServiceModelNamespace@.Version100.Operations" />
+ <add key="ConnectionString" value="C:\Projects\PoToPe\trunk\webservices\src\Prototypes\@ServiceNamespace@\@ServiceNamespace@.Host.WebService\App_Data\@DatabaseName@.db4o" />
+ <add key="MemcachedServers" value="172.20.0.98:11211,172.20.0.99:11211" />
+ <add key="ServerPrivateKey" value="&lt;RSAKeyValue&gt;&lt;Modulus&gt;dUWKXF2sihVNwLhnMK5zxaGKBh4KZqmyiww1a3bbHzSinP+bPFKROvtap44IzVe+1sjzc8xDRkcp9gMXx2+gfw==&lt;/Modulus&gt;&lt;Exponent&gt;AQAB&lt;/Exponent&gt;&lt;P&gt;uB1BBJoV7GWl7igS4+X5etWFJVhOq+yEaxVBfr9FxV0=&lt;/P&gt;&lt;Q&gt;ow8s1vWkpXD3mN98R3xz8xvzy/HHs0km3ctDZHP844s=&lt;/Q&gt;&lt;DP&gt;D6DUEwrtT3q1YgjeyZ+M1MNpIOllDCzwdJKCU7rytjU=&lt;/DP&gt;&lt;DQ&gt;EAr+LmgcuupScggLAj2Mau7lHbu8GjeoS0okZ03CI+E=&lt;/DQ&gt;&lt;InverseQ&gt;iQKvrfCEepEgDp5KXwUpPii+N6i3ournLkdgbKjd/fE=&lt;/InverseQ&gt;&lt;D&gt;TtOTkUqV86smPGi3VA2vXCSdNkdzDlb64GQwdC/MUkiRuKT/hfAVh01aNq2F/5vJDJqfGZJd3pwoy92tUfx34Q==&lt;/D&gt;&lt;/RSAKeyValue&gt;" />
+ </appSettings>
+
+ <objects>
+ <!--<object name="OrderPaymentGateway" type="@ServiceNamespace@.ServiceInterface.Gateways.OrderPaymentGateway, @ServiceNamespace@.ServiceInterface">
+ <constructor-arg ref="OrderPaymentServiceClient" />
+ </object>
+ <object name="OrderPaymentServiceClient" type="ServiceStack.ServiceClient.Web.XmlServiceClient, ServiceStack">
+ <constructor-arg value="http://mercury/Utopia.OrderPayment.Host.WebService/Endpoints/Xml/SyncReply.ashx/" />
+ </object>-->
+ </objects>
+
+ <log4net>
+ <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
+ <file value="bin\log" />
+ <staticLogFileName value="false"/>
+ <countDirection value="1"/>
+ <appendToFile value="true"/>
+ <rollingStyle value="Composite"/>
+ <datePattern value="'-'yyyy.MM.dd'.log'"/>
+ <maxSizeRollBackups value="10"/>
+ <maximumFileSize value="10MB"/>
+ <layout type="log4net.Layout.PatternLayout">
+ <conversionPattern value="%-4timestamp [%thread] %-5level %logger %ndc - %message%newline"/>
+ </layout>
+ </appender>
+ <root>
+ <level value="INFO" />
+ <appender-ref ref="RollingLogFileAppender" />
+ </root>
+ </log4net>
+
+
+ <system.serviceModel>
+ <bindings>
+ <basicHttpBinding>
+ <binding name="Endpoint_BasicHttpBinding" />
+ </basicHttpBinding>
+ <wsHttpBinding>
+ <binding name="Endpoint_WsHttpBinding">
+ <security mode="None">
+ <transport clientCredentialType="None" />
+ <message establishSecurityContext="false" />
+ </security>
+ </binding>
+ </wsHttpBinding>
+ </bindings>
+ <behaviors>
+ <serviceBehaviors>
+ <behavior name="AsyncReplyBehavior">
+ <serviceMetadata httpGetEnabled="true" />
+ <serviceDebug includeExceptionDetailInFaults="true" />
+ </behavior>
+ <behavior name="SyncReplyBehavior">
+ <serviceMetadata httpGetEnabled="true" />
+ <serviceDebug includeExceptionDetailInFaults="true" />
+ </behavior>
+ </serviceBehaviors>
+ </behaviors>
+ <diagnostics>
+ <messageLogging logEntireMessage="true" logMalformedMessages="true" logMessagesAtServiceLevel="false" logMessagesAtTransportLevel="true" />
+ </diagnostics>
+ <services>
+ <service behaviorConfiguration="AsyncReplyBehavior" name="ServiceStack.WebHost.Endpoints.Soap12AsyncOneWayHandler">
+ <endpoint binding="wsHttpBinding" bindingConfiguration="Endpoint_WsHttpBinding" contract="ServiceStack.ServiceClient.Web.IOneWay" />
+ <endpoint address="mex" binding="mexHttpBinding" name="MexHttpBinding" contract="IMetadataExchange" />
+ </service>
+ <service behaviorConfiguration="SyncReplyBehavior" name="ServiceStack.WebHost.Endpoints.Soap12SyncReplyHandler">
+ <endpoint binding="wsHttpBinding" bindingConfiguration="Endpoint_WsHttpBinding" contract="ServiceStack.ServiceClient.Web.ISyncReply" />
+ <endpoint address="mex" binding="mexHttpBinding" name="MexHttpBinding" contract="IMetadataExchange" />
+ </service>
+ <service behaviorConfiguration="AsyncReplyBehavior" name="ServiceStack.WebHost.Endpoints.Soap11AsyncOneWayHandler">
+ <endpoint binding="basicHttpBinding" bindingConfiguration="Endpoint_BasicHttpBinding" contract="ServiceStack.ServiceClient.Web.IOneWay" />
+ <endpoint address="mex" binding="mexHttpBinding" name="MexHttpBinding" contract="IMetadataExchange" />
+ </service>
+ <service behaviorConfiguration="SyncReplyBehavior" name="ServiceStack.WebHost.Endpoints.Soap11SyncReplyHandler">
+ <endpoint binding="basicHttpBinding" bindingConfiguration="Endpoint_BasicHttpBinding" contract="ServiceStack.ServiceClient.Web.ISyncReply" />
+ <endpoint address="mex" binding="mexHttpBinding" name="MexHttpBinding" contract="IMetadataExchange" />
+ </service>
+ </services>
+ </system.serviceModel>
+
+ <connectionStrings/>
+
+ <system.net>
+ <mailSettings>
+ <smtp from="donotreply@ddnglobal.com">
+ <network host="mail.ddnglobal.local" port="25" defaultCredentials="true" />
+ </smtp>
+ </mailSettings>
+ </system.net>
+
+ <system.web>
+ <!--
+ Set compilation debug="true" to insert debugging
+ symbols into the compiled page. Because this
+ affects performance, set this value to true only
+ during development.
+ -->
+ <compilation debug="true">
+ <assemblies>
+ <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
+ <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ </assemblies>
+ </compilation>
+ <!--
+ The <authentication> section enables configuration
+ of the security authentication mode used by
+ ASP.NET to identify an incoming user.
+ -->
+ <authentication mode="Windows"/>
+ <customErrors mode="Off"/>
+ <!--
+ The <customErrors> section enables configuration
+ of what to do if/when an unhandled error occurs
+ during the execution of a request. Specifically,
+ it enables developers to configure html error pages
+ to be displayed in place of a error stack trace.
+
+ <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
+ <error statusCode="403" redirect="NoAccess.htm" />
+ <error statusCode="404" redirect="FileNotFound.htm" />
+ </customErrors>
+ -->
+ <pages>
+ <controls>
+ <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ </controls>
+ </pages>
+ <httpHandlers>
+ <remove verb="*" path="*.asmx"/>
+
+ <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+
+ <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
+ </httpHandlers>
+ <httpModules>
+ <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ </httpModules>
+ </system.web>
+ <system.codedom>
+ <compilers>
+ <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <providerOption name="CompilerVersion" value="v3.5"/>
+ <providerOption name="WarnAsError" value="false"/>
+ </compiler>
+ </compilers>
+ </system.codedom>
+ <!--
+ The system.webServer section is required for running ASP.NET AJAX under Internet
+ Information Services 7.0. It is not necessary for previous version of IIS.
+ -->
+ <system.webServer>
+ <validation validateIntegratedModeConfiguration="false"/>
+ <modules>
+ <add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ </modules>
+ <handlers>
+ <remove name="WebServiceHandlerFactory-Integrated"/>
+ <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+
+
+ <add name="Endpoints.Index" path="Public/Metadata" type="ServiceStack.WebHost.Endpoints.Metadata.IndexMetadataHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+
+ <add name="Soap11.Wsdl" path="Public/Soap11/Wsdl" type="ServiceStack.WebHost.Endpoints.Metadata.Soap11WsdlMetadataHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+ <add name="Soap11.Metadata" path="Public/Soap11/Metadata" type="ServiceStack.WebHost.Endpoints.Metadata.Soap11MetadataHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+
+ <add name="Soap12.Wsdl" path="Public/Soap12/Wsdl" type="ServiceStack.WebHost.Endpoints.Metadata.Soap12WsdlMetadataHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+ <add name="Soap12.Metadata" path="Public/Soap12/Metadata" type="ServiceStack.WebHost.Endpoints.Metadata.Soap12MetadataHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+
+ <add name="Xml.Metadata" path="Public/Xml/Metadata" type="ServiceStack.WebHost.Endpoints.Metadata.XmlMetadataHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+ <add name="Xml.AsyncOneWay" path="Public/Xml/AsyncOneWay" type="ServiceStack.WebHost.Endpoints.XmlAsyncOneWayHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+ <add name="Xml.SyncReply" path="Public/Xml/SyncReply" type="ServiceStack.WebHost.Endpoints.XmlSyncReplyHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+
+ <add name="Json.Metadata" path="Public/Json/Metadata" type="ServiceStack.WebHost.Endpoints.Metadata.JsonMetadataHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+ <add name="Json.AsyncOneWay" path="Public/Json/AsyncOneWay" type="ServiceStack.WebHost.Endpoints.JsonAsyncOneWayHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+ <add name="Json.SyncReply" path="Public/Json/SyncReply" type="ServiceStack.WebHost.Endpoints.JsonSyncReplyHandler, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" />
+ </handlers>
+ </system.webServer>
+
+</configuration>
9 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Commands/IAction.cs
@@ -0,0 +1,9 @@
+using ServiceStack.DesignPatterns.Command;
+
+namespace @ServiceNamespace@.ServiceInterface.Commands
+{
+ public interface IAction<ReturnType> : ICommand<ReturnType>
+ {
+ @DatabaseName@OperationContext Context { get; set; }
+ }
+}
30 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Commands/LogicCommandBase.cs
@@ -0,0 +1,30 @@
+using ServiceStack.Validation;
+
+namespace @ServiceNamespace@.ServiceInterface.Commands
+{
+ public abstract class LogicCommandBase<ReturnType> : IAction<ReturnType>, IValidatableCommand<ReturnType>
+ {
+ public @DatabaseName@OperationContext Context { get; set; }
+
+ protected void ThrowAnyValidationErrors(ValidationResult validationResult)
+ {
+ var hasErrors = false;
+ foreach (var validationError in validationResult.Errors)
+ {
+ hasErrors = true;
+ validationError.ErrorMessage = this.Context.Application.Resources.GetString(validationError.ErrorCode);
+ }
+ if (hasErrors)
+ {
+ throw new ValidationException(validationResult);
+ }
+ }
+
+ public abstract ReturnType Execute();
+
+ public virtual ValidationResult Validate()
+ {
+ return new ValidationResult();
+ }
+ }
+}
54 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/DatabaseNameOperationContext.cs
@@ -0,0 +1,54 @@
+using ServiceStack.Configuration;
+using ServiceStack.DataAccess;
+using ServiceStack.LogicFacade;
+
+namespace @ServiceNamespace@.ServiceInterface
+{
+ public class @DatabaseName@OperationContext : IOperationContext
+ {
+ public @DatabaseName@OperationContext(IApplicationContext application, IRequestContext request)
+ {
+ this.Application = application;
+ this.Request = request;
+ }
+
+ public IApplicationContext Application { get; private set; }
+ public IRequestContext Request { get; private set; }
+
+ public void Dispose()
+ {
+ if (this.Request != null)
+ {
+ this.Request.Dispose();
+ }
+ }
+
+ IApplicationContext IOperationContext.Application { get { return this.Application; } }
+
+ private IPersistenceProvider provider;
+ public IPersistenceProvider Provider
+ {
+ get
+ {
+ if (this.provider == null)
+ {
+ this.provider = this.Application.Factory.Resolve<IPersistenceProvider>();
+ }
+ return this.provider;
+ }
+ }
+
+ private IResourceManager resources;
+ public IResourceManager Resources
+ {
+ get
+ {
+ if (this.resources == null)
+ {
+ this.resources = this.Application.Factory.Resolve<IResourceManager>();
+ }
+ return this.resources;
+ }
+ }
+ }
+}
36 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("@ServiceNamespace@.ServiceInterface")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("@ServiceNamespace@.ServiceInterface")]
+[assembly: AssemblyCopyright("Copyright © 2008")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("307f8234-4678-49f2-ae08-7854e6289b0a")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
89 ...plates/Template.UtopiaService/ServiceNamespace.ServiceInterface/ServiceNamespace.ServiceInterface.csproj
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <@ModelName@Version>9.0.30729</@ModelName@Version>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{5C528394-32F9-49DE-9D3C-B91281BF2C11}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>@ServiceNamespace@.ServiceInterface</RootNamespace>
+ <AssemblyName>@ServiceNamespace@.ServiceInterface</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="ServiceStack, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.dll</HintPath>
+ </Reference>
+ <Reference Include="ServiceStack.Interfaces, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.Interfaces.dll</HintPath>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Runtime.Serialization">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Commands\LogicCommandBase.cs" />
+ <Compile Include="Commands\IAction.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="ServiceResolver.cs" />
+ <Compile Include="@DatabaseName@OperationContext.cs" />
+ <Compile Include="Version100\Get@ModelName@sHandler.cs" />
+ <Compile Include="Version100\HandlerBase.cs" />
+ <Compile Include="Version100\Translators\ResponseStatusTranslator.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\@DomainModelNamespace@\@DomainModelNamespace@.csproj">
+ <Project>{E6170756-E72D-4A0B-AF2F-9DFBE83F5C48}</Project>
+ <Name>@DomainModelNamespace@</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\@ServiceModelNamespace@\@ServiceModelNamespace@.csproj">
+ <Project>{07F5006E-3F8E-4201-9A0D-1BD912FEC028}</Project>
+ <Name>@ServiceModelNamespace@</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <ItemGroup>
+ <Folder Include="Support\" />
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
8 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/ServiceResolver.cs
@@ -0,0 +1,8 @@
+using ServiceStack.ServiceInterface;
+
+namespace @ServiceNamespace@.ServiceInterface
+{
+ public class ServiceResolver : BaseServiceResolver
+ {
+ }
+}
17 ...ectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Version100/GetModelNamesHandler.cs
@@ -0,0 +1,17 @@
+using @ServiceModelNamespace@.Version100.Operations;
+using @ServiceModelNamespace@.Version100.Types;
+
+namespace @ServiceNamespace@.ServiceInterface.Version100
+{
+ public class Get@ModelName@sHandler : HandlerBase
+ {
+ public override object Execute(@DatabaseName@OperationContext context)
+ {
+ var results = context.Provider.GetAll<DomainModel.@ModelName@>();
+
+ return new Get@ModelName@sResponse {
+ @ModelName@s = @ModelName@.ParseAll(results)
+ };
+ }
+ }
+}
15 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceInterface/Version100/HandlerBase.cs
@@ -0,0 +1,15 @@
+using ServiceStack.LogicFacade;
+using ServiceStack.ServiceInterface;
+
+namespace @ServiceNamespace@.ServiceInterface.Version100
+{
+ public abstract class HandlerBase : IService
+ {
+ public object Execute(IOperationContext context)
+ {
+ return Execute((@DatabaseName@OperationContext) context);
+ }
+
+ public abstract object Execute(@DatabaseName@OperationContext context);
+ }
+}
62 ...plate.UtopiaService/ServiceNamespace.ServiceInterface/Version100/Translators/ResponseStatusTranslator.cs
@@ -0,0 +1,62 @@
+using System.Collections.Generic;
+using ServiceStack.Common.Extensions;
+using ServiceStack.DesignPatterns.Translator;
+using ServiceStack.Validation;
+using @ServiceModelNamespace@.Version100.Types;
+
+namespace @ServiceNamespace@.ServiceInterface.Version100.Translators
+{
+ public class ResponseStatusTranslator : ITranslator<ResponseStatus, ValidationResult>
+ {
+ public static readonly ResponseStatusTranslator Instance = new ResponseStatusTranslator();
+
+ public ResponseStatus Parse(ValidationException validationException)
+ {
+ return CreateErrorResponse(validationException.ErrorCode, validationException.Message, validationException.Violations);
+ }
+
+ public ResponseStatus Parse(ValidationResult validationResult)
+ {
+ return validationResult.IsValid
+ ? CreateSuccessResponse(validationResult.SuccessMessage)
+ : CreateErrorResponse(validationResult.ErrorCode, validationResult.ErrorMessage, validationResult.Errors);
+ }
+
+ public static ResponseStatus CreateSuccessResponse(string message)
+ {
+ return new ResponseStatus { Message = message };
+ }
+
+ public static ResponseStatus CreateErrorResponse(string errorCode)
+ {
+ var errorMessage = errorCode.SplitCamelCase();
+ return CreateErrorResponse(errorCode, errorMessage, null);
+ }
+
+ public static ResponseStatus CreateErrorResponse(string errorCode, string errorMessage)
+ {
+ return CreateErrorResponse(errorCode, errorMessage, null);
+ }
+
+ public static ResponseStatus CreateErrorResponse(string errorCode, string errorMessage, IEnumerable<ValidationError> validationErrors)
+ {
+ var to = new ResponseStatus {
+ ErrorCode = errorCode,
+ Message = errorMessage,
+ };
+ if (validationErrors != null)
+ {
+ foreach (var validationError in validationErrors)
+ {
+ var error = new ResponseError {
+ ErrorCode = validationError.ErrorCode,
+ FieldName = validationError.FieldName,
+ Message = validationError.ErrorMessage,
+ };
+ to.Errors.Add(error);
+ }
+ }
+ return to;
+ }
+ }
+}
36 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("Utopia.ServiceModel")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Utopia.ServiceModel")]
+[assembly: AssemblyCopyright("Copyright © 2008")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("a25f10d9-f597-4a09-be67-3cf74b9321b0")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
9 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/ServiceModelFinder.cs
@@ -0,0 +1,9 @@
+using ServiceStack.ServiceModel;
+
+namespace @ServiceModelNamespace@
+{
+ public class ServiceModelFinder : ServiceModelFinderBase
+ {
+ public static ServiceModelFinder Instance = new ServiceModelFinder();
+ }
+}
92 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/ServiceNamespace.ServiceModel.csproj
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <@ModelName@Version>9.0.30729</@ModelName@Version>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{07F5006E-3F8E-4201-9A0D-1BD912FEC028}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>@ServiceModelNamespace@</RootNamespace>
+ <AssemblyName>@ServiceModelNamespace@</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="ServiceStack, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.dll</HintPath>
+ </Reference>
+ <Reference Include="ServiceStack.Interfaces, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.Interfaces.dll</HintPath>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Runtime.Serialization">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="ServiceModelFinder.cs" />
+ <Compile Include="Version100\Operations\Get@ModelName@s.cs" />
+ <Compile Include="Version100\Operations\Get@ModelName@sResponse.cs" />
+ <Compile Include="Version100\Operations\Store@ModelName@.cs" />
+ <Compile Include="Version100\Operations\Store@ModelName@Response.cs" />
+ <Compile Include="Version100\Types\ArrayOfGuidId.cs" />
+ <Compile Include="Version100\Types\ArrayOfIntId.cs" />
+ <Compile Include="Version100\Types\ArrayOfStringId.cs" />
+ <Compile Include="Version100\Types\@ModelName@.cs" />
+ <Compile Include="Version100\Types\@ModelName@.generated.cs" />
+ <Compile Include="Version100\Types\Properties.cs" />
+ <Compile Include="Version100\Types\Property.cs" />
+ <Compile Include="Version100\Types\ResponseError.cs" />
+ <Compile Include="Version100\Types\ResponseStatus.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="genetate-translators.bat" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\@DomainModelNamespace@\@DomainModelNamespace@.csproj">
+ <Project>{E6170756-E72D-4A0B-AF2F-9DFBE83F5C48}</Project>
+ <Name>@DomainModelNamespace@</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
24 ...ectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/GetModelNames.cs
@@ -0,0 +1,24 @@
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+using @ServiceModelNamespace@.Version100.Types;
+
+namespace @ServiceModelNamespace@.Version100.Operations
+{
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public class Get@ModelName@s : IExtensibleDataObject
+ {
+ public Get@ModelName@s()
+ {
+ this.Version = 100;
+ }
+
+ [DataMember]
+ public List<long> @ModelName@Ids { get; set; }
+
+ [DataMember]
+ public int Version { get; set; }
+ [DataMember]
+ public Properties Properties { get; set; }
+ public ExtensionDataObject ExtensionData { get; set; }
+ }
+}
30 ...ates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/GetModelNamesResponse.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+using @ServiceModelNamespace@.Version100.Types;
+
+namespace @ServiceModelNamespace@.Version100.Operations
+{
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public class Get@ModelName@sResponse : IExtensibleDataObject
+ {
+ public Get@ModelName@sResponse()
+ {
+ this.Version = 100;
+ }
+
+ [DataMember]
+ public List<@ModelName@> @ModelName@s { get; set; }
+
+ [DataMember]
+ public ResponseStatus ResponseStatus { get; set; }
+
+ [DataMember]
+ public int Version { get; set; }
+
+ [DataMember]
+ public Properties Properties { get; set; }
+
+ public ExtensionDataObject ExtensionData { get; set; }
+ }
+}
25 ...ctTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/StoreModelName.cs
@@ -0,0 +1,25 @@
+using System.Runtime.Serialization;
+using @ServiceModelNamespace@.Version100.Types;
+
+namespace @ServiceModelNamespace@.Version100.Operations
+{
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public class Store@ModelName@ : IExtensibleDataObject
+ {
+ public Store@ModelName@()
+ {
+ this.Version = 100;
+ }
+
+ [DataMember]
+ public @ModelName@ @ModelName@ { get; set; }
+
+ [DataMember]
+ public int Version { get; set; }
+
+ [DataMember]
+ public Properties Properties { get; set; }
+
+ public ExtensionDataObject ExtensionData { get; set; }
+ }
+}
35 ...tes/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Operations/StoreModelNameResponse.cs
@@ -0,0 +1,35 @@
+/*
+// $Id$
+//
+// Revision : $Revision$
+// Modified Date : $LastChangedDate$
+// Modified By : $LastChangedBy$
+//
+// (c) Copyright 2008 Digital Distribution Networks Ltd
+*/
+
+using System.Runtime.Serialization;
+using @ServiceModelNamespace@.Version100.Types;
+
+namespace @ServiceModelNamespace@.Version100.Operations
+{
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public class Store@ModelName@Response : IExtensibleDataObject
+ {
+ public Store@ModelName@Response()
+ {
+ this.Version = 100;
+ }
+
+ [DataMember]
+ public ResponseStatus ResponseStatus { get; set; }
+
+ [DataMember]
+ public int Version { get; set; }
+
+ [DataMember]
+ public Properties Properties { get; set; }
+
+ public ExtensionDataObject ExtensionData { get; set; }
+ }
+}
13 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ArrayOfGuidId.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [CollectionDataContract(Namespace = "http://schemas.ddnglobal.com/types/", ItemName = "Id")]
+ public class ArrayOfGuidId : List<Guid>
+ {
+ public ArrayOfGuidId() { }
+ public ArrayOfGuidId(IEnumerable<Guid> collection) : base(collection) { }
+ }
+}
22 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ArrayOfIntId.cs
@@ -0,0 +1,22 @@
+/*
+// $Id$
+//
+// Revision : $Revision$
+// Modified Date : $LastChangedDate$
+// Modified By : $LastChangedBy$
+//
+// (c) Copyright 2008 Digital Distribution Networks Ltd
+*/
+
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [CollectionDataContract(Namespace = "http://schemas.ddnglobal.com/types/", ItemName = "Id")]
+ public class ArrayOfIntId : List<int>
+ {
+ public ArrayOfIntId() { }
+ public ArrayOfIntId(IEnumerable<int> collection) : base(collection) { }
+ }
+}
22 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ArrayOfStringId.cs
@@ -0,0 +1,22 @@
+/*
+// $Id$
+//
+// Revision : $Revision$
+// Modified Date : $LastChangedDate$
+// Modified By : $LastChangedBy$
+//
+// (c) Copyright 2008 Digital Distribution Networks Ltd
+*/
+
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [CollectionDataContract(Namespace = "http://schemas.ddnglobal.com/types/", ItemName = "Id")]
+ public class ArrayOfStringId : List<string>
+ {
+ public ArrayOfStringId() { }
+ public ArrayOfStringId(IEnumerable<string> collection) : base(collection) { }
+ }
+}
13 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ModelName.cs
@@ -0,0 +1,13 @@
+using System.Runtime.Serialization;
+using ServiceStack.Translators;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [TranslateModel(typeof(DomainModel.@ModelName@))]
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public partial class @ModelName@
+ {
+ [DataMember]
+ public long @ModelName@Id { get; set; }
+ }
+}
38 ...ctTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ModelName.generated.cs
@@ -0,0 +1,38 @@
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ using System;
+ using System.Collections.Generic;
+
+
+ public partial class @ModelName@
+ {
+
+ public virtual @DomainModelNamespace@.@ModelName@ ToModel()
+ {
+ return this.UpdateModel(new @DomainModelNamespace@.@ModelName@());
+ }
+
+ public virtual @DomainModelNamespace@.@ModelName@ UpdateModel(@DomainModelNamespace@.@ModelName@ model)
+ {
+ return model;
+ }
+
+ public static @ServiceModelNamespace@.Version100.Types.@ModelName@ Parse(@DomainModelNamespace@.@ModelName@ from)
+ {
+ @ServiceModelNamespace@.Version100.Types.@ModelName@ to = new @ServiceModelNamespace@.Version100.Types.@ModelName@();
+ return to;
+ }
+
+ public static System.Collections.Generic.List<@ServiceModelNamespace@.Version100.Types.@ModelName@> ParseAll(System.Collections.Generic.IEnumerable<@DomainModelNamespace@.@ModelName@> from)
+ {
+ System.Collections.Generic.List<@ServiceModelNamespace@.Version100.Types.@ModelName@> to = new System.Collections.Generic.List<@ServiceModelNamespace@.Version100.Types.@ModelName@>();
+ for (System.Collections.Generic.IEnumerator<@DomainModelNamespace@.@ModelName@> iter = from.GetEnumerator(); iter.MoveNext();
+ )
+ {
+ @DomainModelNamespace@.@ModelName@ item = iter.Current;
+ to.Add(@ServiceModelNamespace@.Version100.Types.@ModelName@.Parse(item));
+ }
+ return to;
+ }
+ }
+}
12 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/Properties.cs
@@ -0,0 +1,12 @@
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [CollectionDataContract(Namespace = "http://schemas.ddnglobal.com/types/", ItemName = "Property")]
+ public class Properties : List<Property>
+ {
+ public Properties() { }
+ public Properties(IEnumerable<Property> collection) : base(collection) { }
+ }
+}
11 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/Property.cs
@@ -0,0 +1,11 @@
+using System.Runtime.Serialization;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public class Property
+ {
+ public string Name { get; set; }
+ public string Value { get; set; }
+ }
+}
15 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ResponseError.cs
@@ -0,0 +1,15 @@
+using System.Runtime.Serialization;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public class ResponseError
+ {
+ [DataMember]
+ public string ErrorCode { get; set; }
+ [DataMember]
+ public string FieldName { get; set; }
+ [DataMember]
+ public string Message { get; set; }
+ }
+}
28 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/Version100/Types/ResponseStatus.cs
@@ -0,0 +1,28 @@
+using System.Collections.Generic;
+using System.Runtime.Serialization;
+
+namespace @ServiceModelNamespace@.Version100.Types
+{
+ [DataContract(Namespace = "http://schemas.ddnglobal.com/types/")]
+ public class ResponseStatus
+ {
+ /// <summary>
+ /// Initializes a new instance of the <see cref="ResponseStatus"/> class.
+ ///
+ /// A response status without an errorcode == success
+ /// </summary>
+ public ResponseStatus()
+ {
+ this.Errors = new List<ResponseError>();
+ }
+
+ [DataMember]
+ public string ErrorCode { get; set; }
+
+ [DataMember]
+ public string Message { get; set; }
+
+ [DataMember]
+ public List<ResponseError> Errors { get; set; }
+ }
+}
8 ProjectTemplates/Template.UtopiaService/ServiceNamespace.ServiceModel/genetate-translators.bat
@@ -0,0 +1,8 @@
+PUSHD bin\Debug
+
+REM Usage: ServiceStack.Translators.Generator.exe [/f Overwrite existing files] [/assembly:Full Path to Assembly] [/out: Directory for generated classes]
+
+COPY ..\..\..\Lib\ServiceStack.* .
+ServiceStack.Translators.Generator.exe /f /assembly:C:\Projects\PoToPe\trunk\webservices\src\Prototypes\@ServiceNamespace@\@ServiceModelNamespace@\bin\Debug\@ServiceModelNamespace@.dll /out:C:\Projects\PoToPe\trunk\webservices\src\Prototypes\@ServiceNamespace@\@ServiceModelNamespace@\Version100\Types
+
+POPD
36 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("@ServiceNamespace@.Tests")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("@ServiceNamespace@.Tests")]
+[assembly: AssemblyCopyright("Copyright © 2008")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("f4f417d3-b959-4a08-8825-6cc499f84bec")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
95 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/ServiceNamespace.Tests.csproj
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <@ModelName@Version>9.0.30729</@ModelName@Version>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{F72A9857-7E81-4069-893E-8554C76A9273}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>@ServiceNamespace@.Tests</RootNamespace>
+ <AssemblyName>@ServiceNamespace@.Tests</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="Moq, Version=2.6.1014.1, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\Moq.dll</HintPath>
+ </Reference>
+ <Reference Include="nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\nunit.framework.dll</HintPath>
+ </Reference>
+ <Reference Include="ServiceStack, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.dll</HintPath>
+ </Reference>
+ <Reference Include="ServiceStack.Interfaces, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\Lib\ServiceStack.Interfaces.dll</HintPath>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Runtime.Serialization">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="Support\TestBase.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\@ServiceNamespace@.ServiceInterface\@ServiceNamespace@.ServiceInterface.csproj">
+ <Project>{5C528394-32F9-49DE-9D3C-B91281BF2C11}</Project>
+ <Name>@ServiceNamespace@.ServiceInterface</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\@ServiceModelNamespace@\@ServiceModelNamespace@.csproj">
+ <Project>{07F5006E-3F8E-4201-9A0D-1BD912FEC028}</Project>
+ <Name>@ServiceModelNamespace@</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="app.config" />
+ </ItemGroup>
+ <ItemGroup>
+ <Folder Include="ServiceInterface\" />
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
44 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/Support/TestBase.cs
@@ -0,0 +1,44 @@
+using Moq;
+using ServiceStack.CacheAccess.Providers;
+using ServiceStack.Configuration;
+using ServiceStack.DataAccess;
+using ServiceStack.ServiceInterface;
+using ServiceStack.WebHost.Endpoints;
+using @ServiceNamespace@.ServiceInterface;
+using @ServiceModelNamespace@;
+
+namespace @ServiceNamespace@.Tests.Support
+{
+ public class TestBase
+ {
+ protected ApplicationContext AppContext { get; private set; }
+
+ public TestBase()
+ {
+ // Setup the application context
+ this.AppContext = new ApplicationContext {
+ Cache = new MemoryCacheClient(),
+ Factory = new FactoryProvider(null),
+ Resources = new ConfigurationResourceManager(),
+ };
+ }
+
+ protected void RegisterPersistenceProvider(IPersistenceProvider provider)
+ {
+ var manager = new Mock<IPersistenceProviderManager>();
+ manager.Expect(m => m.GetProvider()).Returns(provider);
+ this.AppContext.Factory.Register(manager.Object);
+ }
+
+ protected virtual @DatabaseName@OperationContext CreateOperationContext(object requestDto, params object[] providers)
+ {
+ return new @DatabaseName@OperationContext(this.AppContext, new RequestContext(requestDto, new FactoryProvider(null, providers)));
+ }
+
+ protected virtual @DatabaseName@OperationContext CreateOperationContext(string xml, params object[] providers)
+ {
+ var requestDto = new XmlRequestDto(xml, ServiceModelFinder.Instance);
+ return new @DatabaseName@OperationContext(this.AppContext, new RequestContext(requestDto, new FactoryProvider(null, providers)));
+ }
+ }
+}
5 ProjectTemplates/Template.UtopiaService/ServiceNamespace.Tests/app.config
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+ <appSettings>
+ </appSettings>
+</configuration>
61 ProjectTemplates/Template.UtopiaService/ServiceNamespace.sln
@@ -0,0 +1,61 @@
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{B3740A7C-77BF-4DAB-8A08-116B797C8373}"
+ ProjectSection(SolutionItems) = preProject
+ Lib\_get-latest-libs.bat = Lib\_get-latest-libs.bat
+ Lib\ServiceStack.dll = Lib\ServiceStack.dll
+ Lib\ServiceStack.Interfaces.dll = Lib\ServiceStack.Interfaces.dll
+ Lib\ServiceStack.Translators.Generator.exe = Lib\ServiceStack.Translators.Generator.exe
+ EndProjectSection
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "@ServiceNamespace@.ServiceInterface", "@ServiceNamespace@.ServiceInterface\@ServiceNamespace@.ServiceInterface.csproj", "{5C528394-32F9-49DE-9D3C-B91281BF2C11}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "@ServiceNamespace@.Tests", "@ServiceNamespace@.Tests\@ServiceNamespace@.Tests.csproj", "{F72A9857-7E81-4069-893E-8554C76A9273}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "@ServiceNamespace@.Host.WebService", "@ServiceNamespace@.Host.WebService\@ServiceNamespace@.Host.WebService.csproj", "{FAD3B057-C2E7-4FC1-8E89-ABA9B0062DDD}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{C8E2B906-6CC0-4C02-BC78-920D9988DC07}"
+ ProjectSection(SolutionItems) = preProject
+ BuildFile.xml = BuildFile.xml
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Hosts", "Hosts", "{2DACC4AD-9405-49C4-BBFD-C364B07DCB63}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "@DomainModelNamespace@", "@DomainModelNamespace@\@DomainModelNamespace@.csproj", "{E6170756-E72D-4A0B-AF2F-9DFBE83F5C48}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "@ServiceModelNamespace@", "@ServiceModelNamespace@\@ServiceModelNamespace@.csproj", "{07F5006E-3F8E-4201-9A0D-1BD912FEC028}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {5C528394-32F9-49DE-9D3C-B91281BF2C11}.Debug|Any CPU.ActiveCfg = Debug|Any CPU