Browse Source

inital commit for ime london TP

prod
shakun 1 year ago
commit
b6ecb096f5
  1. 539
      .gitignore
  2. 194
      BankOfCeylon/BankOfCeylon.csproj
  3. 163
      BankOfCeylon/BankOfCeylonAPIService/BankOfCeylonAPI.cs
  4. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.AmendRemResponse.datasource
  5. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.CancelRemResponse.datasource
  6. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetAccBalResponse.datasource
  7. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetAccTranHistoryResponse.datasource
  8. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetBankBranchesSLResponse.datasource
  9. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetBanksSLResponse.datasource
  10. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetExchResponse.datasource
  11. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetLstOfRemResponse.datasource
  12. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetTranHistoryResponse.datasource
  13. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.SendMsgResponse.datasource
  14. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.SendRemResponse.datasource
  15. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.StatusRemResponse.datasource
  16. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.VerifyAccountResponse.datasource
  17. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.accountBalancesResponse.datasource
  18. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.accountHistoryResponse.datasource
  19. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.banksResponse.datasource
  20. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.branchResponse.datasource
  21. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.exchangeRateResponse.datasource
  22. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.getMsgResponse.datasource
  23. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.getMsg_1Response.datasource
  24. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.messageResponse.datasource
  25. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.messagesResponse.datasource
  26. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.remittanceRespons.datasource
  27. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.remittanceResponses.datasource
  28. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.responseStatus.datasource
  29. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.tranHistoryResponse.datasource
  30. 10
      BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.verifyAccResponse.datasource
  31. 2410
      BankOfCeylon/Connected Services/BOCServiceReference/Reference.cs
  32. 32
      BankOfCeylon/Connected Services/BOCServiceReference/Reference.svcmap
  33. 522
      BankOfCeylon/Connected Services/BOCServiceReference/Service.wsdl
  34. 339
      BankOfCeylon/Connected Services/BOCServiceReference/ServiceCom.xsd
  35. 10
      BankOfCeylon/Connected Services/BOCServiceReference/configuration.svcinfo
  36. 817
      BankOfCeylon/Connected Services/BOCServiceReference/configuration91.svcinfo
  37. 24
      BankOfCeylon/Model/SendMoneyModel.cs
  38. 36
      BankOfCeylon/Properties/AssemblyInfo.cs
  39. 35
      BankOfCeylon/Properties/Settings.Designer.cs
  40. 9
      BankOfCeylon/Properties/Settings.settings
  41. 28
      BankOfCeylon/Settings.cs
  42. 83
      BankOfCeylon/app.config
  43. 4
      BankOfCeylon/packages.config
  44. 84
      BracBank/BracBank.csproj
  45. 1029
      BracBank/BracBankApiService/BracBankAPI.cs
  46. 24
      BracBank/Model/AccountValidation.cs
  47. 50
      BracBank/Model/BracResponse.cs
  48. 42
      BracBank/Model/BracTranStatus.cs
  49. 63
      BracBank/Model/GetCodes.cs
  50. 58
      BracBank/Model/SendTxnModel.cs
  51. 22
      BracBank/Model/TokenReponse.cs
  52. 36
      BracBank/Properties/AssemblyInfo.cs
  53. 23
      BracBank/app.config
  54. 12
      BracBank/digitalSignature.cs
  55. 4
      BracBank/packages.config
  56. 53
      Business/App.config
  57. 264
      Business/Business.csproj
  58. 14
      Business/BusinessLogic/Address/ILocateBusiness.cs
  59. 103
      Business/BusinessLogic/Address/ServiceApi.cs
  60. 52
      Business/BusinessLogic/Auth/AuthServices.cs
  61. 12
      Business/BusinessLogic/Auth/IAuthServices.cs
  62. 226
      Business/BusinessLogic/NotificationApiService/EmailService.cs
  63. 316
      Business/BusinessLogic/NotificationApiService/FireBaseService.cs
  64. 11
      Business/BusinessLogic/NotificationApiService/INotificationService.cs
  65. 72
      Business/BusinessLogic/NotificationApiService/NotificationService.cs
  66. 10
      Business/BusinessLogic/SMSApiService/ISMSService.cs
  67. 191
      Business/BusinessLogic/SMSApiService/SMSService.cs
  68. 96
      Business/BusinessLogic/Signature/ApiHelper.cs
  69. 21
      Business/BusinessLogic/TPApiServices/Donga/DongaServices.cs
  70. 64
      Business/BusinessLogic/TPApiServices/Factory/ApiFactoryServices.cs
  71. 9
      Business/BusinessLogic/TPApiServices/Factory/IApiFactoryServices.cs
  72. 23
      Business/BusinessLogic/TPApiServices/JMENepal/JMENepalServices.cs
  73. 8
      Business/BusinessLogic/TPApiServices/TPServices/IThirdPartyServices.cs
  74. 347
      Business/BusinessLogic/TPApiServices/TPServices/ThirdPartyServices.cs
  75. 21
      Business/BusinessLogic/TPApiServices/Transfast/TransfastServices.cs
  76. 10
      Business/Connected Services/LoqateApi/Business.LoqateApi.Capture_Interactive_Find_v1_10Response.datasource
  77. 10
      Business/Connected Services/LoqateApi/Business.LoqateApi.Capture_Interactive_Find_v1_10_ArrayOfResults.datasource
  78. 288
      Business/Connected Services/LoqateApi/Reference.cs
  79. 31
      Business/Connected Services/LoqateApi/Reference.svcmap
  80. 10
      Business/Connected Services/LoqateApi/configuration.svcinfo
  81. 201
      Business/Connected Services/LoqateApi/configuration91.svcinfo
  82. 74
      Business/Connected Services/LoqateApi/wsdlnew.wsdl
  83. 75
      Business/DIConfig/UnityConfig.cs
  84. 29
      Business/Properties/AssemblyInfo.cs
  85. 11
      Business/TokenManagement/ITokenManagementServices.cs
  86. 91
      Business/TokenManagement/TokenManagementServices.cs
  87. 35
      Business/packages.config
  88. 591
      Cebuana/ApiService/CebuanaApi.cs
  89. 26
      Cebuana/App.config
  90. 83
      Cebuana/Cebuana.csproj
  91. 51
      Cebuana/Model/AmendTransaction.cs
  92. 58
      Cebuana/Model/BankList.cs
  93. 40
      Cebuana/Model/BeneficiaryDetails.cs
  94. 37
      Cebuana/Model/CancelTransaction.cs
  95. 129
      Cebuana/Model/CheckStatus.cs
  96. 25
      Cebuana/Model/PartnerCredentials.cs
  97. 68
      Cebuana/Model/PushRemittanceRequest.cs
  98. 37
      Cebuana/Model/RemitterDetails.cs
  99. 21
      Cebuana/Model/TransactionDetails.cs
  100. 94
      Cebuana/Model/TransactionRequestRTA.cs

539
.gitignore

@ -0,0 +1,539 @@
# Created by https://www.gitignore.io/api/visualstudio
# Edit at https://www.gitignore.io/?templates=visualstudio
### VisualStudio ###
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
# User-specific files
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Mono auto generated files
mono_crash.*
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# Visual Studio 2017 auto generated files
Generated\ Files/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUnit
*.VisualState.xml
TestResult.xml
nunit-*.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# Benchmark Results
BenchmarkDotNet.Artifacts/
# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
# StyleCop
StyleCopReport.xml
# Files built by Visual Studio
*_i.c
*_p.c
*_h.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*_wpftmp.csproj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# Visual Studio Trace Files
*.e2e
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# JustCode is a .NET coding add-in
.JustCode
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json
# Visual Studio code coverage results
*.coverage
*.coveragexml
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/
# NuGet Packages
*.nupkg
# NuGet Symbol Packages
*.snupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx
*.appxbundle
*.appxupload
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!?*.[Cc]ache/
# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs
# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk
# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak
# SQL Server files
*.mdf
*.ldf
*.ndf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser
*- [Bb]ackup.rdl
*- [Bb]ackup ([0-9]).rdl
*- [Bb]ackup ([0-9][0-9]).rdl
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# Paket dependency manager
.paket/paket.exe
paket-files/
# FAKE - F# Make
.fake/
# CodeRush personal settings
.cr/personal
# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc
# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config
# Tabs Studio
*.tss
# Telerik's JustMock configuration file
*.jmconfig
# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs
# OpenCover UI analysis results
OpenCover/
# Azure Stream Analytics local run output
ASALocalRun/
# MSBuild Binary and Structured Log
*.binlog
# NVidia Nsight GPU debugger configuration file
*.nvuser
# MFractors (Xamarin productivity tool) working folder
.mfractor/
# Local History for Visual Studio
.localhistory/
# BeatPulse healthcheck temp database
healthchecksdb
# Backup folder for Package Reference Convert tool in Visual Studio 2017
MigrationBackup/
# End of https://www.gitignore.io/api/visualstudio
/CitizenINFC/bin/Debug/CitizenINFC.dll
/CitizenINFC/bin/Debug/CitizenINFC.dll.config
/CitizenINFC/bin/Debug/CitizenINFC.pdb
/CitizenINFC/obj/Debug/CitizenINFC.csproj.CoreCompileInputs.cache
/CitizenINFC/obj/Debug/CitizenINFC.csproj.FileListAbsolute.txt
/CitizenINFC/obj/Debug/CitizenINFC.csprojAssemblyReference.cache
/CitizenINFC/obj/Debug/CitizenINFC.dll
/CitizenINFC/obj/Debug/CitizenINFC.pdb
/CivilBankPayAPI/bin/Debug/CivilBankPayAPI.dll
/CivilBankPayAPI/bin/Debug/CivilBankPayAPI.dll.config
/CivilBankPayAPI/bin/Debug/CivilBankPayAPI.pdb
/CivilBankPayAPI/obj/Debug/CivilBankPayAPI.csproj.CoreCompileInputs.cache
/CivilBankPayAPI/obj/Debug/CivilBankPayAPI.csproj.FileListAbsolute.txt
/CivilBankPayAPI/obj/Debug/CivilBankPayAPI.csprojAssemblyReference.cache
/CivilBankPayAPI/obj/Debug/CivilBankPayAPI.dll
/CivilBankPayAPI/obj/Debug/CivilBankPayAPI.pdb
/EBLPayAPI/bin/Debug/EBLPayAPI.dll
/EBLPayAPI/bin/Debug/EBLPayAPI.dll.config
/EBLPayAPI/bin/Debug/EBLPayAPI.pdb
/EBLPayAPI/obj/Debug/EBLPayAPI.csproj.FileListAbsolute.txt
/EBLPayAPI/obj/Debug/EBLPayAPI.dll
/EBLPayAPI/obj/Debug/EBLPayAPI.pdb
/GlobalTranFastPayAPI/bin/Debug/GlobalTranFastPayAPI.dll
/GlobalTranFastPayAPI/bin/Debug/GlobalTranFastPayAPI.dll.config
/GlobalTranFastPayAPI/bin/Debug/GlobalTranFastPayAPI.pdb
/GlobalTranFastPayAPI/obj/Debug/GlobalTranFastPayAPI.csproj.FileListAbsolute.txt
/GlobalTranFastPayAPI/obj/Debug/GlobalTranFastPayAPI.dll
/GlobalTranFastPayAPI/obj/Debug/GlobalTranFastPayAPI.pdb
/GMEPayAPI/bin/Debug/GMEPayAPI.dll
/GMEPayAPI/bin/Debug/GMEPayAPI.dll.config
/GMEPayAPI/bin/Debug/GMEPayAPI.pdb
/GMEPayAPI/obj/Debug/GMEPayAPI.csproj.FileListAbsolute.txt
/GMEPayAPI/obj/Debug/GMEPayAPI.dll
/GMEPayAPI/obj/Debug/GMEPayAPI.pdb
/IntelExpressPayAPI/bin/Debug/IntelExpressPayAPI.dll
/IntelExpressPayAPI/bin/Debug/IntelExpressPayAPI.dll.config
/IntelExpressPayAPI/bin/Debug/IntelExpressPayAPI.pdb
/IntelExpressPayAPI/obj/Debug/IntelExpressPayAPI.csproj.FileListAbsolute.txt
/IntelExpressPayAPI/obj/Debug/IntelExpressPayAPI.dll
/IntelExpressPayAPI/obj/Debug/IntelExpressPayAPI.pdb
/JanataBankAPI/bin/Debug/JanataBankAPI.dll
/JanataBankAPI/bin/Debug/JanataBankAPI.dll.config
/JanataBankAPI/bin/Debug/JanataBankAPI.pdb
/JanataBankAPI/obj/Debug/JanataBankAPI.csproj.FileListAbsolute.txt
/JanataBankAPI/obj/Debug/JanataBankAPI.dll
/JanataBankAPI/obj/Debug/JanataBankAPI.pdb
/JMEPAYAPI/bin/Debug/JMEPAYAPI.dll
/JMEPAYAPI/bin/Debug/JMEPAYAPI.pdb
/JMEPAYAPI/obj/Debug/JMEPAYAPI.csproj.FileListAbsolute.txt
/JMEPAYAPI/obj/Debug/JMEPAYAPI.dll
/JMEPAYAPI/obj/Debug/JMEPAYAPI.pdb
/LumbiniBankAPI/bin/Debug/LumbiniBankAPI.dll
/LumbiniBankAPI/bin/Debug/LumbiniBankAPI.dll.config
/LumbiniBankAPI/bin/Debug/LumbiniBankAPI.pdb
/LumbiniBankAPI/obj/Debug/LumbiniBankAPI.csproj.FileListAbsolute.txt
/LumbiniBankAPI/obj/Debug/LumbiniBankAPI.dll
/LumbiniBankAPI/obj/Debug/LumbiniBankAPI.pdb
/MachhapuchhrePayAPI/bin/Debug/MachhapuchhrePayAPI.dll
/MachhapuchhrePayAPI/bin/Debug/MachhapuchhrePayAPI.dll.config
/MachhapuchhrePayAPI/bin/Debug/MachhapuchhrePayAPI.pdb
/MachhapuchhrePayAPI/obj/Debug/MachhapuchhrePayAPI.csproj.FileListAbsolute.txt
/MachhapuchhrePayAPI/obj/Debug/MachhapuchhrePayAPI.dll
/MachhapuchhrePayAPI/obj/Debug/MachhapuchhrePayAPI.pdb
/MaxPayAPI/bin/Debug/MaxPayAPI.dll
/MaxPayAPI/bin/Debug/MaxPayAPI.dll.config
/MaxPayAPI/bin/Debug/MaxPayAPI.pdb
/MaxPayAPI/obj/Debug/MaxPayAPI.csproj.FileListAbsolute.txt
/MaxPayAPI/obj/Debug/MaxPayAPI.dll
/MaxPayAPI/obj/Debug/MaxPayAPI.pdb
/MegaBankPayAPI/bin/Debug/MegaBankPayAPI.dll
/MegaBankPayAPI/bin/Debug/MegaBankPayAPI.dll.config
/MegaBankPayAPI/bin/Debug/MegaBankPayAPI.pdb
/MegaBankPayAPI/obj/Debug/MegaBankPayAPI.csproj.FileListAbsolute.txt
/MegaBankPayAPI/obj/Debug/MegaBankPayAPI.dll
/MegaBankPayAPI/obj/Debug/MegaBankPayAPI.pdb
/MoneyGramPayAPI/bin/Debug/MoneyGramPayAPI.dll
/MoneyGramPayAPI/bin/Debug/MoneyGramPayAPI.dll.config
/MoneyGramPayAPI/bin/Debug/MoneyGramPayAPI.pdb
/MoneyGramPayAPI/obj/Debug/MoneyGramPayAPI.csproj.FileListAbsolute.txt
/MoneyGramPayAPI/obj/Debug/MoneyGramPayAPI.dll
/MoneyGramPayAPI/obj/Debug/MoneyGramPayAPI.pdb
/NCHLAPI/bin/Debug/ClassLibrary1.dll
/NCHLAPI/bin/Debug/ClassLibrary1.pdb
/NCHLAPI/obj/Debug/ClassLibrary1.dll
/NCHLAPI/obj/Debug/ClassLibrary1.pdb
/NCHLAPI/obj/Debug/NCHLAPI.csproj.CoreCompileInputs.cache
/NCHLAPI/obj/Debug/NCHLAPI.csproj.FileListAbsolute.txt
/NCHLAPI/obj/Debug/NCHLAPI.csprojAssemblyReference.cache
/NIBLPayAPI/bin/Debug/NIBLPayAPI.dll
/NIBLPayAPI/bin/Debug/NIBLPayAPI.dll.config
/NIBLPayAPI/bin/Debug/NIBLPayAPI.pdb
/NIBLPayAPI/obj/Debug/NIBLPayAPI.csproj.FileListAbsolute.txt
/NIBLPayAPI/obj/Debug/NIBLPayAPI.dll
/NIBLPayAPI/obj/Debug/NIBLPayAPI.pdb
/PlacidAPI/bin/Debug/PlacidAPI.dll
/PlacidAPI/bin/Debug/PlacidAPI.dll.config
/PlacidAPI/bin/Debug/PlacidAPI.pdb
/PlacidAPI/obj/Debug/PlacidAPI.csproj.CoreCompileInputs.cache
/PlacidAPI/obj/Debug/PlacidAPI.csproj.FileListAbsolute.txt
/PlacidAPI/obj/Debug/PlacidAPI.dll
/PlacidAPI/obj/Debug/PlacidAPI.pdb
/ReliableRemitPayAPI/bin/Debug/ReliableRemitPayAPI.dll
/ReliableRemitPayAPI/bin/Debug/ReliableRemitPayAPI.dll.config
/ReliableRemitPayAPI/bin/Debug/ReliableRemitPayAPI.pdb
/ReliableRemitPayAPI/obj/Debug/ReliableRemitPayAPI.csproj.FileListAbsolute.txt
/ReliableRemitPayAPI/obj/Debug/ReliableRemitPayAPI.dll
/ReliableRemitPayAPI/obj/Debug/ReliableRemitPayAPI.pdb
/RIAPayAPI/bin/Debug/RIAPayAPI.dll
/RIAPayAPI/bin/Debug/RIAPayAPI.dll.config
/RIAPayAPI/bin/Debug/RIAPayAPI.pdb
/RIAPayAPI/obj/Debug/RIAPayAPI.csproj.FileListAbsolute.txt
/RIAPayAPI/obj/Debug/RIAPayAPI.dll
/RIAPayAPI/obj/Debug/RIAPayAPI.pdb
/SANIMAPayAPI/bin/Debug/SANIMAPayAPI.dll
/SANIMAPayAPI/bin/Debug/SANIMAPayAPI.dll.config
/SANIMAPayAPI/bin/Debug/SANIMAPayAPI.pdb
/SANIMAPayAPI/obj/Debug/SANIMAPayAPI.csproj.FileListAbsolute.txt
/SANIMAPayAPI/obj/Debug/SANIMAPayAPI.dll
/SANIMAPayAPI/obj/Debug/SANIMAPayAPI.pdb
/ShakaPayAPI/bin/Debug/ShakaPayAPI.dll
/ShakaPayAPI/bin/Debug/ShakaPayAPI.dll.config
/ShakaPayAPI/bin/Debug/ShakaPayAPI.pdb
/ShakaPayAPI/obj/Debug/ShakaPayAPI.csproj.FileListAbsolute.txt
/ShakaPayAPI/obj/Debug/ShakaPayAPI.dll
/ShakaPayAPI/obj/Debug/ShakaPayAPI.pdb
/SunmanGlobalPayAPI/bin/Debug/SunmanGlobalPayAPI.dll
/SunmanGlobalPayAPI/bin/Debug/SunmanGlobalPayAPI.dll.config
/SunmanGlobalPayAPI/bin/Debug/SunmanGlobalPayAPI.pdb
/SunmanGlobalPayAPI/obj/Debug/SunmanGlobalPayAPI.csproj.FileListAbsolute.txt
/SunmanGlobalPayAPI/obj/Debug/SunmanGlobalPayAPI.dll
/SunmanGlobalPayAPI/obj/Debug/SunmanGlobalPayAPI.pdb
/SunrisePayAPI/bin/Debug/SunrisePayAPI.dll
/SunrisePayAPI/obj/Debug/SunrisePayAPI.dll
/Swift.DAL/bin/Debug/MaxPayAPI.dll
/Swift.DAL/bin/Debug/MaxPayAPI.pdb
/Swift.DAL/bin/Debug/SANIMAPayAPI.dll
/Swift.DAL/bin/Debug/SANIMAPayAPI.pdb
/Swift.DAL/bin/Debug/ShakaPayAPI.dll
/Swift.DAL/bin/Debug/ShakaPayAPI.pdb
/Swift.DAL/bin/Debug/Swift.DAL.dll
/Swift.DAL/bin/Debug/Swift.DAL.pdb
/Swift.DAL/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
/Swift.DAL/obj/Debug/Swift.DAL.csproj.FileListAbsolute.txt
/Swift.DAL/obj/Debug/Swift.DAL.dll
/Swift.DAL/obj/Debug/Swift.DAL.pdb
/Swift.web/bin/MaxPayAPI.dll
/Swift.web/bin/MaxPayAPI.pdb
/Swift.web/bin/ShakaPayAPI.dll
/Swift.web/bin/ShakaPayAPI.pdb
/Swift.web/bin/Swift.DAL.dll
/Swift.web/bin/Swift.DAL.pdb
/Swift.web/bin/Swift.web.dll
/Swift.web/bin/Swift.web.pdb
/Swift.web/obj/Debug/Interop.CERTENROLLLib.dll
/Swift.web/obj/Debug/Swift.web.csproj.FileListAbsolute.txt
/Swift.web/obj/Debug/Swift.web.csproj.ResolveComReference.cache
/Swift.web/obj/Debug/Swift.web.dll
/Swift.web/obj/Debug/Swift.web.pdb
/TMLPayAPI/bin/Debug/TMLPayAPI.dll
/TMLPayAPI/bin/Debug/TMLPayAPI.dll.config
/TMLPayAPI/bin/Debug/TMLPayAPI.pdb
/TMLPayAPI/obj/Debug/TMLPayAPI.csproj.FileListAbsolute.txt
/TMLPayAPI/obj/Debug/TMLPayAPI.dll
/TMLPayAPI/obj/Debug/TMLPayAPI.pdb
/TranFastPayAPI/bin/Debug/TranFastPayAPI.dll
/TranFastPayAPI/bin/Debug/TranFastPayAPI.pdb
/TranFastPayAPI/obj/Debug/TranFastPayAPI.csproj.FileListAbsolute.txt
/TranFastPayAPI/obj/Debug/TranFastPayAPI.dll
/TranFastPayAPI/obj/Debug/TranFastPayAPI.pdb
/XpressMoneySendAPI/bin/Debug/XpressMoneySendAPI.dll
/XpressMoneySendAPI/bin/Debug/XpressMoneySendAPI.dll.config
/XpressMoneySendAPI/bin/Debug/XpressMoneySendAPI.pdb
/XpressMoneySendAPI/obj/Debug/XpressMoneySendAPI.csproj.CoreCompileInputs.cache
/XpressMoneySendAPI/obj/Debug/XpressMoneySendAPI.csproj.FileListAbsolute.txt
/XpressMoneySendAPI/obj/Debug/XpressMoneySendAPI.dll
/XpressMoneySendAPI/obj/Debug/XpressMoneySendAPI.pdb
/YesRemit_TranFast/bin/Debug/YesRemit_TranFast.dll
/YesRemit_TranFast/bin/Debug/YesRemit_TranFast.dll.config
/YesRemit_TranFast/bin/Debug/YesRemit_TranFast.pdb
/YesRemit_TranFast/obj/Debug/YesRemit_TranFast.csproj.FileListAbsolute.txt
/YesRemit_TranFast/obj/Debug/YesRemit_TranFast.dll
/YesRemit_TranFast/obj/Debug/YesRemit_TranFast.pdb
/Swift.web/web.config

194
BankOfCeylon/BankOfCeylon.csproj

@ -0,0 +1,194 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{76F39343-B64E-4CA6-8B20-76A81793645E}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>BankOfCeylon</RootNamespace>
<AssemblyName>BankOfCeylon</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
</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>
<DocumentationFile>
</DocumentationFile>
</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>
<PropertyGroup>
<StartupObject />
</PropertyGroup>
<ItemGroup>
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.EnterpriseServices" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Web" />
<Reference Include="System.Web.Services" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="BankOfCeylonAPIService\BankOfCeylonAPI.cs" />
<Compile Include="Connected Services\BOCServiceReference\Reference.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Reference.svcmap</DependentUpon>
</Compile>
<Compile Include="Model\SendMoneyModel.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
<Compile Include="Settings.cs" />
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.accountBalancesResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.accountHistoryResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.AmendRemResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.banksResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.branchResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.CancelRemResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.exchangeRateResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.GetAccBalResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.GetAccTranHistoryResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.GetBankBranchesSLResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.GetBanksSLResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.GetExchResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.GetLstOfRemResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.getMsgResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.getMsg_1Response.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.GetTranHistoryResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.messageResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.messagesResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.remittanceRespons.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.remittanceResponses.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.responseStatus.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.SendMsgResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.SendRemResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.StatusRemResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.tranHistoryResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.VerifyAccountResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\BankOfCeylon.BOCServiceReference.verifyAccResponse.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\BOCServiceReference\Service.wsdl" />
<None Include="Connected Services\BOCServiceReference\ServiceCom.xsd">
<SubType>Designer</SubType>
</None>
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Common\Common.csproj">
<Project>{d626fe23-51c8-4441-b3c7-92a54d1f572e}</Project>
<Name>Common</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Connected Services\" />
</ItemGroup>
<ItemGroup>
<WebReferences Include="Web References\" />
</ItemGroup>
<ItemGroup>
<WCFMetadataStorage Include="Connected Services\BOCServiceReference\" />
</ItemGroup>
<ItemGroup>
<None Include="Connected Services\BOCServiceReference\configuration91.svcinfo" />
</ItemGroup>
<ItemGroup>
<None Include="Connected Services\BOCServiceReference\configuration.svcinfo" />
</ItemGroup>
<ItemGroup>
<None Include="Connected Services\BOCServiceReference\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

163
BankOfCeylon/BankOfCeylonAPIService/BankOfCeylonAPI.cs

@ -0,0 +1,163 @@
using System;
using System.Net;
using BankOfCeylon.BOCServiceReference;
using BankOfCeylon.Model;
using Common.Models.Bank_Account;
using Common.Models.RequestResponse;
using Common.Models.Status;
using Common.Models.TxnModel;
using Common.TPService;
using Common.Utility;
using log4net;
namespace BankOfCeylon.BankOfCeylonAPIService
{
public class BankOfCeylonAPI : ITPApiServices
{
private readonly ILog _log = LogManager.GetLogger(typeof(BankOfCeylonAPI));
ServiceComClient _service = new ServiceComClient();
string UserName = GetStatic.ReadWebConfig("boc_username", "");
string Password = GetStatic.ReadWebConfig("boc_password", "");
string BankAccLKR = GetStatic.ReadWebConfig("boc_account_no_lkr", "");
string BankAccUSD = GetStatic.ReadWebConfig("boc_account_no_usd", "");
string ChargingType = GetStatic.ReadWebConfig("boc_chargin_type", "");
string SMSAlertReceiver = GetStatic.ReadWebConfig("boc_sms_alert", "");
public BankOfCeylonAPI()
{
_service.ClientCredentials.UserName.UserName = UserName;
_service.ClientCredentials.UserName.Password = Password;
ServicePointManager.SecurityProtocol = (SecurityProtocolType)768 | (SecurityProtocolType)3072 | (SecurityProtocolType)192 | (SecurityProtocolType)48;
ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, sslPolicyErrors) => true;
}
public TPResponse GetTPResponse<T>(T model, string MethodName) where T : class
{
switch (MethodName)
{
case "send":
return SendTransaction(model as SendTransaction);
case "verify":
return AccountValidation(model as AccountValidate);
case "status":
return GetTxnStatus(model as GetStatus);
default:
return new TPResponse() { ResponseCode = "1", Msg = "Method Name Not Found !" };
}
}
private TPResponse SendTransaction(SendTransaction sendTransaction)
{
SendMoneyModel requestTxn = SendModelMap(sendTransaction);
TPResponse _response = new CustomModelValidaton().IsModelValid(requestTxn);
if (_response == null)
{
_response = new TPResponse();
string reqJson = GetStatic.ObjectToJson(requestTxn);
_log.Info("SendTransaction | REQUEST :" + GetStatic.ObjectToJson(requestTxn));
remittanceRespons response = _service.SendRem(requestTxn.CUSPIN, requestTxn.SENDERACCOUNTNO, requestTxn.CURRENCY, requestTxn.REMITTENCETYPE
, requestTxn.SENDERNAME, requestTxn.BENEFICIARYNAME, requestTxn.BENEFICIARYADD, requestTxn.BENEFICIARYPHONE
, requestTxn.BENEFICIARYID, requestTxn.BANKACCTNO, requestTxn.BANKNAME, requestTxn.BANKADDRESS, requestTxn.SENDERPHONE
, requestTxn.SENDRESINFO, requestTxn.TRANSACTIONREF, requestTxn.SMSALERT, requestTxn.AMOUNT, requestTxn.CHARGE);
string resJson = GetStatic.ObjectToJson(response);
_log.Info("SendTransaction | RESPONSE :" + GetStatic.ObjectToJson(response));
_response.ResponseCode = response.responseCode == "456" ? "0" : "1";
_response.Msg = response.msg;
//_response.Extra = response.response;
_response.Data = response;
}
else
{
_log.Info("SendTransaction | MODEL VALIDATION FAILED :" + GetStatic.ObjectToJson(requestTxn));
}
return _response;
}
private TPResponse GetTxnStatus(GetStatus getStatus)
{
TPResponse _response = new CustomModelValidaton().IsModelValid(getStatus);
if (_response == null)
{
_response = new TPResponse();
_log.Info("GetTxnStatus | REQUEST :" + GetStatic.ObjectToJson(getStatus));
remittanceRespons response = _service.StatusRem(getStatus.ControlNo);
_log.Info("GetTxnStatus | RESPONSE :" + GetStatic.ObjectToJson(response));
string paidStatus = "UNPAID";
if (response.response.responseStatusCode == "514")
paidStatus = "PAID";
if (response.response.responseStatusCode == "515")
paidStatus = "PAID";
if (response.response.responseStatusCode == "516")
paidStatus = "PAID";
if (response.response.responseStatusCode == "615")
paidStatus = "PAID";
_response.ResponseCode = paidStatus == "PAID" ? "0" : "1";
_response.Msg = response.response.resposnseStatusMsg;
_response.Extra = paidStatus;
_response.Extra2 = response.response.responseStatusCode;
_response.Data = response.response;
if (!_response.ResponseCode.Equals("0"))
{
_response.ResponseCode = "1";
}
}
else
{
_log.Info("GetTxnStatus | MODEL VALIDATION FAILED :" + GetStatic.ObjectToJson(getStatus).ToString());
}
return _response;
}
private SendMoneyModel SendModelMap(SendTransaction sendTransaction)
{
return new SendMoneyModel {
CUSPIN = sendTransaction.Transaction.JMEControlNo,
SENDERACCOUNTNO = sendTransaction.Transaction.PCurr.ToLower() == "lkr" ? BankAccLKR : BankAccUSD,
CURRENCY = sendTransaction.Transaction.PCurr,
REMITTENCETYPE = sendTransaction.Transaction.PaymentType,
SENDERNAME = sendTransaction.Sender.SFullName,
BENEFICIARYNAME = sendTransaction.Receiver.RFullName,
BENEFICIARYADD = sendTransaction.Receiver.RAdd1,
BENEFICIARYPHONE = sendTransaction.Receiver.RMobile,
BENEFICIARYID = sendTransaction.Receiver.RIdNo,
BANKACCTNO = sendTransaction.Receiver.RAccountNo,
BANKNAME = sendTransaction.Agent.PBankId,
BANKADDRESS = sendTransaction.Receiver.RLocation,
SENDERPHONE = sendTransaction.Sender.SMobile,
SENDRESINFO = sendTransaction.Transaction.PayoutMsg,
TRANSACTIONREF = sendTransaction.TranId.ToString(),
SMSALERT = SMSAlertReceiver,
AMOUNT = Convert.ToDouble(sendTransaction.Transaction.PAmt),
CHARGE = ChargingType
};
}
private TPResponse AccountValidation(AccountValidate accountValidate)
{
TPResponse response = new TPResponse();
response.SetResponse("1", "Invalid Account", null);
verifyAccResponse res = _service.VerifyAccount(accountValidate.AccountNumber);
if (res.verifyCode == "028")
{
response.ResponseCode = "0";
response.Msg = res.verifyMsg;
}
return response;
}
}
}

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.AmendRemResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="AmendRemResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.AmendRemResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.CancelRemResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="CancelRemResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.CancelRemResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetAccBalResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="GetAccBalResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.GetAccBalResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetAccTranHistoryResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="GetAccTranHistoryResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.GetAccTranHistoryResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetBankBranchesSLResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="GetBankBranchesSLResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.GetBankBranchesSLResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetBanksSLResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="GetBanksSLResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.GetBanksSLResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetExchResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="GetExchResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.GetExchResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetLstOfRemResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="GetLstOfRemResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.GetLstOfRemResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.GetTranHistoryResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="GetTranHistoryResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.GetTranHistoryResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.SendMsgResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="SendMsgResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.SendMsgResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.SendRemResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="SendRemResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.SendRemResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.StatusRemResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="StatusRemResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.StatusRemResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.VerifyAccountResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="VerifyAccountResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.VerifyAccountResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.accountBalancesResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="accountBalancesResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.accountBalancesResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.accountHistoryResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="accountHistoryResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.accountHistoryResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.banksResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="banksResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.banksResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.branchResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="branchResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.branchResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.exchangeRateResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="exchangeRateResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.exchangeRateResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.getMsgResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="getMsgResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.getMsgResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.getMsg_1Response.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="getMsg_1Response" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.getMsg_1Response, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.messageResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="messageResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.messageResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.messagesResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="messagesResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.messagesResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.remittanceRespons.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="remittanceRespons" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.remittanceRespons, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.remittanceResponses.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="remittanceResponses" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.remittanceResponses, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.responseStatus.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="responseStatus" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.responseStatus, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.tranHistoryResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="tranHistoryResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.tranHistoryResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
BankOfCeylon/Connected Services/BOCServiceReference/BankOfCeylon.BOCServiceReference.verifyAccResponse.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="verifyAccResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>BankOfCeylon.BOCServiceReference.verifyAccResponse, Connected Services.BOCServiceReference.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

2410
BankOfCeylon/Connected Services/BOCServiceReference/Reference.cs
File diff suppressed because it is too large
View File

32
BankOfCeylon/Connected Services/BOCServiceReference/Reference.svcmap

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<ReferenceGroup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ID="9381aa2c-c064-4554-be60-61fae74ac643" xmlns="urn:schemas-microsoft-com:xml-wcfservicemap">
<ClientOptions>
<GenerateAsynchronousMethods>false</GenerateAsynchronousMethods>
<GenerateTaskBasedAsynchronousMethod>true</GenerateTaskBasedAsynchronousMethod>
<EnableDataBinding>true</EnableDataBinding>
<ExcludedTypes />
<ImportXmlTypes>false</ImportXmlTypes>
<GenerateInternalTypes>false</GenerateInternalTypes>
<GenerateMessageContracts>false</GenerateMessageContracts>
<NamespaceMappings />
<CollectionMappings />
<GenerateSerializableTypes>true</GenerateSerializableTypes>
<Serializer>Auto</Serializer>
<UseSerializerForFaults>true</UseSerializerForFaults>
<ReferenceAllAssemblies>true</ReferenceAllAssemblies>
<ReferencedAssemblies />
<ReferencedDataContractTypes />
<ServiceContractMappings />
</ClientOptions>
<MetadataSources>
<MetadataSource Address="http://122.255.63.44:7001/ServiceCom/ServiceCom?WSDL" Protocol="http" SourceId="1" />
</MetadataSources>
<Metadata>
<MetadataFile FileName="ServiceCom.xsd" MetadataType="Schema" ID="5d671722-34fe-4afd-910e-9df25ca7a5c9" SourceId="1" SourceUrl="http://122.255.63.44:7001/ServiceCom/ServiceCom?xsd=1" />
<MetadataFile FileName="Service.wsdl" MetadataType="Wsdl" ID="52ccdc4d-f10d-4145-97b5-ab5735aee03f" SourceId="1" SourceUrl="http://122.255.63.44:7001/ServiceCom/ServiceCom?WSDL" />
</Metadata>
<Extensions>
<ExtensionFile FileName="configuration91.svcinfo" Name="configuration91.svcinfo" />
<ExtensionFile FileName="configuration.svcinfo" Name="configuration.svcinfo" />
</Extensions>
</ReferenceGroup>

522
BankOfCeylon/Connected Services/BOCServiceReference/Service.wsdl

@ -0,0 +1,522 @@
<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:wsp="http://www.w3.org/ns/ws-policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:tns="http://Service/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsp1_2="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" name="Service" targetNamespace="http://Service/" xmlns="http://schemas.xmlsoap.org/wsdl/">
<wsp:Policy xmlns:sunwsp="http://java.sun.com/xml/ns/wsit/policy" xmlns:ssp="http://schemas.sun.com/2006/03/wss/server" xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702" wsu:Id="ServiceComPortBindingPolicy">
<sp:SignedEncryptedSupportingTokens>
<wsp:Policy>
<sp:UsernameToken sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient">
<wsp:Policy>
<sp:WssUsernameToken10 />
</wsp:Policy>
</sp:UsernameToken>
</wsp:Policy>
</sp:SignedEncryptedSupportingTokens>
<sp:SymmetricBinding>
<wsp:Policy>
<sp:AlgorithmSuite>
<wsp:Policy>
<sp:Basic128 />
</wsp:Policy>
</sp:AlgorithmSuite>
<sp:IncludeTimestamp />
<sp:Layout>
<wsp:Policy>
<sp:Strict />
</wsp:Policy>
</sp:Layout>
<sp:OnlySignEntireHeadersAndBody />
<sp:ProtectionToken>
<wsp:Policy>
<sp:X509Token sp:IncludeToken="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/Never">
<wsp:Policy>
<sp:RequireIssuerSerialReference />
<sp:WssX509V3Token10 />
</wsp:Policy>
</sp:X509Token>
</wsp:Policy>
</sp:ProtectionToken>
</wsp:Policy>
</sp:SymmetricBinding>
<sp:Wss11>
<wsp:Policy>
<sp:MustSupportRefEncryptedKey />
<sp:MustSupportRefIssuerSerial />
<sp:MustSupportRefThumbprint />
</wsp:Policy>
</sp:Wss11>
<wsam:Addressing />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_GetLstOfRem_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns1="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns1:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_AmendRem_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns2="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns2:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_GetExch_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns3:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_SendMsg_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns4="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns4:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_getMsg_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns5="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns5:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_GetAccTranHistory_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns6="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns6:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_GetTranHistory_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns7="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns7:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_SendRem_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns8="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns8:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_StatusRem_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns9="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns9:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_getMsg_1_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns10="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns10:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_VerifyAccount_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns11="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns11:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_GetBankBranchesSL_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns12="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns12:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_GetAccBal_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns13="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns13:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_CancelRem_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns14="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns14:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:wsat="http://schemas.xmlsoap.org/ws/2004/10/wsat" wsu:Id="ServiceComPortBinding_GetBanksSL_WSAT_Policy">
<wsat:ATAlwaysCapability />
<wsat:ATAssertion xmlns:ns15="http://schemas.xmlsoap.org/ws/2002/12/policy" wsp:Optional="true" ns15:Optional="true" />
</wsp:Policy>
<wsp:Policy xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702" wsu:Id="ServiceComPortBinding_GetBanksSL_Input_Policy">
<sp:EncryptedParts>
<sp:Body />
</sp:EncryptedParts>
<sp:SignedParts>
<sp:Body />
<sp:Header Namespace="http://www.w3.org/2005/08/addressing" Name="ReplyTo" />
<sp:Header Name="To" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="From" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="AckRequested" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Name="CreateSequence" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Name="Sequence" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Name="MessageID" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Namespace="http://www.w3.org/2005/08/addressing" Name="FaultTo" />
<sp:Header Name="SequenceAcknowledgement" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Namespace="http://www.w3.org/2005/08/addressing" Name="Action" />
<sp:Header Name="RelatesTo" Namespace="http://www.w3.org/2005/08/addressing" />
</sp:SignedParts>
</wsp:Policy>
<wsp:Policy xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702" wsu:Id="ServiceComPortBinding_GetBanksSL_Output_Policy">
<sp:EncryptedParts>
<sp:Body />
</sp:EncryptedParts>
<sp:SignedParts>
<sp:Body />
<sp:Header Namespace="http://www.w3.org/2005/08/addressing" Name="ReplyTo" />
<sp:Header Name="To" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="From" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Name="AckRequested" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Name="CreateSequence" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Name="Sequence" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Name="MessageID" Namespace="http://www.w3.org/2005/08/addressing" />
<sp:Header Namespace="http://www.w3.org/2005/08/addressing" Name="FaultTo" />
<sp:Header Name="SequenceAcknowledgement" Namespace="http://docs.oasis-open.org/ws-rx/wsrm/200702" />
<sp:Header Namespace="http://www.w3.org/2005/08/addressing" Name="Action" />
<sp:Header Name="RelatesTo" Namespace="http://www.w3.org/2005/08/addressing" />
</sp:SignedParts>
</wsp:Policy>
<types>
<xsd:schema>
<xsd:import schemaLocation="http://122.255.63.44:7001/ServiceCom/ServiceCom?xsd=1" namespace="http://Service/" />
</xsd:schema>
</types>
<message name="AmendRem">
<part name="parameters" element="tns:AmendRem" />
</message>
<message name="AmendRemResponse">
<part name="parameters" element="tns:AmendRemResponse" />
</message>
<message name="GetBankBranchesSL">
<part name="parameters" element="tns:GetBankBranchesSL" />
</message>
<message name="GetBankBranchesSLResponse">
<part name="parameters" element="tns:GetBankBranchesSLResponse" />
</message>
<message name="GetBanksSL">
<part name="parameters" element="tns:GetBanksSL" />
</message>
<message name="GetBanksSLResponse">
<part name="parameters" element="tns:GetBanksSLResponse" />
</message>
<message name="CancelRem">
<part name="parameters" element="tns:CancelRem" />
</message>
<message name="CancelRemResponse">
<part name="parameters" element="tns:CancelRemResponse" />
</message>
<message name="SendRem">
<part name="parameters" element="tns:SendRem" />
</message>
<message name="SendRemResponse">
<part name="parameters" element="tns:SendRemResponse" />
</message>
<message name="StatusRem">
<part name="parameters" element="tns:StatusRem" />
</message>
<message name="StatusRemResponse">
<part name="parameters" element="tns:StatusRemResponse" />
</message>
<message name="GetLstOfRem">
<part name="parameters" element="tns:GetLstOfRem" />
</message>
<message name="GetLstOfRemResponse">
<part name="parameters" element="tns:GetLstOfRemResponse" />
</message>
<message name="GetAccBal">
<part name="parameters" element="tns:GetAccBal" />
</message>
<message name="GetAccBalResponse">
<part name="parameters" element="tns:GetAccBalResponse" />
</message>
<message name="GetAccTranHistory">
<part name="parameters" element="tns:GetAccTranHistory" />
</message>
<message name="GetAccTranHistoryResponse">
<part name="parameters" element="tns:GetAccTranHistoryResponse" />
</message>
<message name="GetTranHistory">
<part name="parameters" element="tns:GetTranHistory" />
</message>
<message name="GetTranHistoryResponse">
<part name="parameters" element="tns:GetTranHistoryResponse" />
</message>
<message name="GetExch">
<part name="parameters" element="tns:GetExch" />
</message>
<message name="GetExchResponse">
<part name="parameters" element="tns:GetExchResponse" />
</message>
<message name="getMsg_1">
<part name="parameters" element="tns:getMsg_1" />
</message>
<message name="getMsg_1Response">
<part name="parameters" element="tns:getMsg_1Response" />
</message>
<message name="getMsg">
<part name="parameters" element="tns:getMsg" />
</message>
<message name="getMsgResponse">
<part name="parameters" element="tns:getMsgResponse" />
</message>
<message name="SendMsg">
<part name="parameters" element="tns:SendMsg" />
</message>
<message name="SendMsgResponse">
<part name="parameters" element="tns:SendMsgResponse" />
</message>
<message name="VerifyAccount">
<part name="parameters" element="tns:VerifyAccount" />
</message>
<message name="VerifyAccountResponse">
<part name="parameters" element="tns:VerifyAccountResponse" />
</message>
<portType name="ServiceCom">
<operation name="AmendRem">
<input wsam:Action="http://Service/ServiceCom/AmendRemRequest" message="tns:AmendRem" />
<output wsam:Action="http://Service/ServiceCom/AmendRemResponse" message="tns:AmendRemResponse" />
</operation>
<operation name="GetBankBranchesSL">
<input wsam:Action="http://Service/ServiceCom/GetBankBranchesSLRequest" message="tns:GetBankBranchesSL" />
<output wsam:Action="http://Service/ServiceCom/GetBankBranchesSLResponse" message="tns:GetBankBranchesSLResponse" />
</operation>
<operation name="GetBanksSL">
<input wsam:Action="http://Service/ServiceCom/GetBanksSLRequest" message="tns:GetBanksSL" />
<output wsam:Action="http://Service/ServiceCom/GetBanksSLResponse" message="tns:GetBanksSLResponse" />
</operation>
<operation name="CancelRem">
<input wsam:Action="http://Service/ServiceCom/CancelRemRequest" message="tns:CancelRem" />
<output wsam:Action="http://Service/ServiceCom/CancelRemResponse" message="tns:CancelRemResponse" />
</operation>
<operation name="SendRem">
<input wsam:Action="http://Service/ServiceCom/SendRemRequest" message="tns:SendRem" />
<output wsam:Action="http://Service/ServiceCom/SendRemResponse" message="tns:SendRemResponse" />
</operation>
<operation name="StatusRem">
<input wsam:Action="http://Service/ServiceCom/StatusRemRequest" message="tns:StatusRem" />
<output wsam:Action="http://Service/ServiceCom/StatusRemResponse" message="tns:StatusRemResponse" />
</operation>
<operation name="GetLstOfRem">
<input wsam:Action="http://Service/ServiceCom/GetLstOfRemRequest" message="tns:GetLstOfRem" />
<output wsam:Action="http://Service/ServiceCom/GetLstOfRemResponse" message="tns:GetLstOfRemResponse" />
</operation>
<operation name="GetAccBal">
<input wsam:Action="http://Service/ServiceCom/GetAccBalRequest" message="tns:GetAccBal" />
<output wsam:Action="http://Service/ServiceCom/GetAccBalResponse" message="tns:GetAccBalResponse" />
</operation>
<operation name="GetAccTranHistory">
<input wsam:Action="http://Service/ServiceCom/GetAccTranHistoryRequest" message="tns:GetAccTranHistory" />
<output wsam:Action="http://Service/ServiceCom/GetAccTranHistoryResponse" message="tns:GetAccTranHistoryResponse" />
</operation>
<operation name="GetTranHistory">
<input wsam:Action="http://Service/ServiceCom/GetTranHistoryRequest" message="tns:GetTranHistory" />
<output wsam:Action="http://Service/ServiceCom/GetTranHistoryResponse" message="tns:GetTranHistoryResponse" />
</operation>
<operation name="GetExch">
<input wsam:Action="http://Service/ServiceCom/GetExchRequest" message="tns:GetExch" />
<output wsam:Action="http://Service/ServiceCom/GetExchResponse" message="tns:GetExchResponse" />
</operation>
<operation name="getMsg_1">
<input wsam:Action="http://Service/ServiceCom/getMsg_1Request" message="tns:getMsg_1" />
<output wsam:Action="http://Service/ServiceCom/getMsg_1Response" message="tns:getMsg_1Response" />
</operation>
<operation name="getMsg">
<input wsam:Action="http://Service/ServiceCom/getMsgRequest" message="tns:getMsg" />
<output wsam:Action="http://Service/ServiceCom/getMsgResponse" message="tns:getMsgResponse" />
</operation>
<operation name="SendMsg">
<input wsam:Action="http://Service/ServiceCom/SendMsgRequest" message="tns:SendMsg" />
<output wsam:Action="http://Service/ServiceCom/SendMsgResponse" message="tns:SendMsgResponse" />
</operation>
<operation name="VerifyAccount">
<input wsam:Action="http://Service/ServiceCom/VerifyAccountRequest" message="tns:VerifyAccount" />
<output wsam:Action="http://Service/ServiceCom/VerifyAccountResponse" message="tns:VerifyAccountResponse" />
</operation>
</portType>
<binding name="ServiceComPortBinding" type="tns:ServiceCom">
<wsp:PolicyReference URI="#ServiceComPortBindingPolicy" />
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<operation name="AmendRem">
<wsp:PolicyReference URI="#ServiceComPortBinding_AmendRem_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_AmendRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_AmendRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="GetBankBranchesSL">
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBankBranchesSL_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBankBranchesSL_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBankBranchesSL_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="GetBanksSL">
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="CancelRem">
<wsp:PolicyReference URI="#ServiceComPortBinding_CancelRem_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_CancelRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_CancelRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="SendRem">
<wsp:PolicyReference URI="#ServiceComPortBinding_SendRem_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_SendRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_SendRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="StatusRem">
<wsp:PolicyReference URI="#ServiceComPortBinding_StatusRem_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_StatusRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_StatusRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="GetLstOfRem">
<wsp:PolicyReference URI="#ServiceComPortBinding_GetLstOfRem_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetLstOfRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetLstOfRem_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="GetAccBal">
<wsp:PolicyReference URI="#ServiceComPortBinding_GetAccBal_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetAccBal_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetAccBal_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="GetAccTranHistory">
<wsp:PolicyReference URI="#ServiceComPortBinding_GetAccTranHistory_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetAccTranHistory_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetAccTranHistory_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="GetTranHistory">
<wsp:PolicyReference URI="#ServiceComPortBinding_GetTranHistory_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetTranHistory_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetTranHistory_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="GetExch">
<wsp:PolicyReference URI="#ServiceComPortBinding_GetExch_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetExch_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_GetExch_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="getMsg_1">
<wsp:PolicyReference URI="#ServiceComPortBinding_getMsg_1_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_getMsg_1_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_getMsg_1_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="getMsg">
<wsp:PolicyReference URI="#ServiceComPortBinding_getMsg_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_getMsg_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_getMsg_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="SendMsg">
<wsp:PolicyReference URI="#ServiceComPortBinding_SendMsg_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_SendMsg_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_SendMsg_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
<operation name="VerifyAccount">
<wsp:PolicyReference URI="#ServiceComPortBinding_VerifyAccount_WSAT_Policy" />
<soap:operation soapAction="" />
<input>
<wsp:PolicyReference URI="#ServiceComPortBinding_VerifyAccount_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Input_Policy" />
<soap:body use="literal" />
</input>
<output>
<wsp:PolicyReference URI="#ServiceComPortBinding_VerifyAccount_WSAT_Policy" />
<wsp:PolicyReference URI="#ServiceComPortBinding_GetBanksSL_Output_Policy" />
<soap:body use="literal" />
</output>
</operation>
</binding>
<service name="Service">
<port name="ServiceComPort" binding="tns:ServiceComPortBinding">
<soap:address location="http://122.255.63.44:7001/ServiceCom/ServiceCom" />
</port>
</service>
</definitions>

339
BankOfCeylon/Connected Services/BOCServiceReference/ServiceCom.xsd

@ -0,0 +1,339 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://Service/" targetNamespace="http://Service/" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="AmendRem" type="tns:AmendRem" />
<xs:element name="AmendRemResponse" type="tns:AmendRemResponse" />
<xs:element name="CancelRem" type="tns:CancelRem" />
<xs:element name="CancelRemResponse" type="tns:CancelRemResponse" />
<xs:element name="GetAccBal" type="tns:GetAccBal" />
<xs:element name="GetAccBalResponse" type="tns:GetAccBalResponse" />
<xs:element name="GetAccTranHistory" type="tns:GetAccTranHistory" />
<xs:element name="GetAccTranHistoryResponse" type="tns:GetAccTranHistoryResponse" />
<xs:element name="GetBankBranchesSL" type="tns:GetBankBranchesSL" />
<xs:element name="GetBankBranchesSLResponse" type="tns:GetBankBranchesSLResponse" />
<xs:element name="GetBanksSL" type="tns:GetBanksSL" />
<xs:element name="GetBanksSLResponse" type="tns:GetBanksSLResponse" />
<xs:element name="GetExch" type="tns:GetExch" />
<xs:element name="GetExchResponse" type="tns:GetExchResponse" />
<xs:element name="GetLstOfRem" type="tns:GetLstOfRem" />
<xs:element name="GetLstOfRemResponse" type="tns:GetLstOfRemResponse" />
<xs:element name="GetTranHistory" type="tns:GetTranHistory" />
<xs:element name="GetTranHistoryResponse" type="tns:GetTranHistoryResponse" />
<xs:element name="SendMsg" type="tns:SendMsg" />
<xs:element name="SendMsgResponse" type="tns:SendMsgResponse" />
<xs:element name="SendRem" type="tns:SendRem" />
<xs:element name="SendRemResponse" type="tns:SendRemResponse" />
<xs:element name="StatusRem" type="tns:StatusRem" />
<xs:element name="StatusRemResponse" type="tns:StatusRemResponse" />
<xs:element name="VerifyAccount" type="tns:VerifyAccount" />
<xs:element name="VerifyAccountResponse" type="tns:VerifyAccountResponse" />
<xs:element name="getMsg" type="tns:getMsg" />
<xs:element name="getMsgResponse" type="tns:getMsgResponse" />
<xs:element name="getMsg_1" type="tns:getMsg_1" />
<xs:element name="getMsg_1Response" type="tns:getMsg_1Response" />
<xs:complexType name="CancelRem">
<xs:sequence>
<xs:element minOccurs="0" name="RemittanceRef" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="CancelRemResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:remittanceRespons" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="remittanceRespons">
<xs:sequence>
<xs:element minOccurs="0" name="msg" type="xs:string" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
<xs:element minOccurs="0" name="responseCode" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="responseStatus">
<xs:sequence>
<xs:element minOccurs="0" name="responseStatusCode" type="xs:string" />
<xs:element minOccurs="0" name="resposnseStatusMsg" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetExch">
<xs:sequence>
<xs:element minOccurs="0" name="Currency" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetExchResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:exchangeRateResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="exchangeRateResponse">
<xs:sequence>
<xs:element minOccurs="0" name="exchangeRate" type="tns:exchangeRate" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="exchangeRate">
<xs:sequence>
<xs:element name="chBuying" type="xs:double" />
<xs:element name="chSelling" type="xs:double" />
<xs:element name="cuBuying" type="xs:double" />
<xs:element name="cuSelling" type="xs:double" />
<xs:element minOccurs="0" name="currency" type="tns:currency" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="currency">
<xs:sequence>
<xs:element minOccurs="0" name="currencyCode" type="xs:string" />
<xs:element minOccurs="0" name="currencyName" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="VerifyAccount">
<xs:sequence>
<xs:element minOccurs="0" name="AccuntNumber" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="VerifyAccountResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:verifyAccResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="verifyAccResponse">
<xs:sequence>
<xs:element minOccurs="0" name="accountNumber" type="xs:string" />
<xs:element minOccurs="0" name="nameOfAccount" type="xs:string" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
<xs:element minOccurs="0" name="verifyCode" type="xs:string" />
<xs:element minOccurs="0" name="verifyMsg" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetBanksSL">
<xs:sequence />
</xs:complexType>
<xs:complexType name="GetBanksSLResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:banksResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="banksResponse">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="banks" nillable="true" type="tns:bank" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="bank">
<xs:sequence>
<xs:element minOccurs="0" name="bankCode" type="xs:string" />
<xs:element minOccurs="0" name="bankName" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetAccBal">
<xs:sequence />
</xs:complexType>
<xs:complexType name="GetAccBalResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:accountBalancesResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountBalancesResponse">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="accountBalance" nillable="true" type="tns:accountBalance" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountBalance">
<xs:sequence>
<xs:element minOccurs="0" name="account" type="xs:string" />
<xs:element minOccurs="0" name="acountType" type="xs:string" />
<xs:element name="balance" type="xs:double" />
<xs:element minOccurs="0" name="currency" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetAccTranHistory">
<xs:sequence>
<xs:element minOccurs="0" name="AccountNumber" type="xs:string" />
<xs:element minOccurs="0" name="fromDate" type="xs:dateTime" />
<xs:element minOccurs="0" name="toDate" type="xs:dateTime" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetAccTranHistoryResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:accountHistoryResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountHistoryResponse">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="accountHistory" nillable="true" type="tns:accountHistory" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="accountHistory">
<xs:sequence>
<xs:element name="balance" type="xs:double" />
<xs:element minOccurs="0" name="date" type="xs:dateTime" />
<xs:element minOccurs="0" name="description" type="xs:string" />
<xs:element name="tranAmount" type="xs:double" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="SendRem">
<xs:sequence>
<xs:element minOccurs="0" name="CUSPIN" type="xs:string" />
<xs:element minOccurs="0" name="SENDERACCOUNTNO" type="xs:string" />
<xs:element minOccurs="0" name="CURRENCY" type="xs:string" />
<xs:element minOccurs="0" name="REMITTENCETYPE" type="xs:string" />
<xs:element minOccurs="0" name="SENDERNAME" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYNAME" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYADD" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYPHONE" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYID" type="xs:string" />
<xs:element minOccurs="0" name="BANKACCTNO" type="xs:string" />
<xs:element minOccurs="0" name="BANKNAME" type="xs:string" />
<xs:element minOccurs="0" name="BANKADDRESS" type="xs:string" />
<xs:element minOccurs="0" name="SENDERPHONE" type="xs:string" />
<xs:element minOccurs="0" name="SENDRESINFO" type="xs:string" />
<xs:element minOccurs="0" name="TRANSACTIONREF" type="xs:string" />
<xs:element minOccurs="0" name="SMSALERT" type="xs:string" />
<xs:element name="AMOUNT" type="xs:double" />
<xs:element minOccurs="0" name="CHARGE" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="SendRemResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:remittanceRespons" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetTranHistory">
<xs:sequence>
<xs:element minOccurs="0" name="AccountNumber" type="xs:string" />
<xs:element minOccurs="0" name="fromDate" type="xs:dateTime" />
<xs:element minOccurs="0" name="toDate" type="xs:dateTime" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetTranHistoryResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:tranHistoryResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="tranHistoryResponse">
<xs:sequence>
<xs:element minOccurs="0" name="image" type="xs:base64Binary" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetBankBranchesSL">
<xs:sequence>
<xs:element minOccurs="0" name="BankCode" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetBankBranchesSLResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:branchResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="branchResponse">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="banks" nillable="true" type="tns:branch" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="branch">
<xs:sequence>
<xs:element minOccurs="0" name="branchCode" type="xs:string" />
<xs:element minOccurs="0" name="branchName" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="AmendRem">
<xs:sequence>
<xs:element minOccurs="0" name="REFNUMBER" type="xs:string" />
<xs:element minOccurs="0" name="REMITTENCETYPE" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYNAME" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYADD" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYPHONE" type="xs:string" />
<xs:element minOccurs="0" name="BENEFICIARYID" type="xs:string" />
<xs:element minOccurs="0" name="BANKACCTNO" type="xs:string" />
<xs:element minOccurs="0" name="BANKNAME" type="xs:string" />
<xs:element minOccurs="0" name="BANKADDRESS" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="AmendRemResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:remittanceRespons" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="SendMsg">
<xs:sequence>
<xs:element minOccurs="0" name="Msg" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="SendMsgResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="getMsg_1">
<xs:sequence>
<xs:element minOccurs="0" name="Code" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="getMsg_1Response">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:messageResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="messageResponse">
<xs:sequence>
<xs:element minOccurs="0" name="message" type="tns:message" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="message">
<xs:sequence>
<xs:element minOccurs="0" name="msg" type="xs:string" />
<xs:element minOccurs="0" name="resposeCode" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="getMsg">
<xs:sequence />
</xs:complexType>
<xs:complexType name="getMsgResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:messagesResponse" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="messagesResponse">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="messages" nillable="true" type="tns:message" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="StatusRem">
<xs:sequence>
<xs:element minOccurs="0" name="RemittanceRef" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="StatusRemResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:remittanceRespons" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetLstOfRem">
<xs:sequence>
<xs:element minOccurs="0" name="FromDate" type="xs:dateTime" />
<xs:element minOccurs="0" name="ToDate" type="xs:dateTime" />
<xs:element name="Status" type="xs:int" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetLstOfRemResponse">
<xs:sequence>
<xs:element minOccurs="0" name="return" type="tns:remittanceResponses" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="remittanceResponses">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="remittanceRespons" nillable="true" type="tns:remittanceResponsV1" />
<xs:element minOccurs="0" name="response" type="tns:responseStatus" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="remittanceResponsV1">
<xs:sequence>
<xs:element minOccurs="0" name="amount" type="xs:string" />
<xs:element minOccurs="0" name="reference" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:schema>

10
BankOfCeylon/Connected Services/BOCServiceReference/configuration.svcinfo

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<configurationSnapshot xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:schemas-microsoft-com:xml-wcfconfigurationsnapshot">
<behaviors />
<bindings>
<binding digest="System.ServiceModel.Configuration.CustomBindingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089:&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data name=&quot;ServiceComPortBinding2&quot;&gt;&lt;httpTransport /&gt;&lt;security authenticationMode=&quot;UserNameForCertificate&quot; defaultAlgorithmSuite=&quot;Basic128&quot; includeTimestamp=&quot;true&quot; messageProtectionOrder=&quot;SignBeforeEncrypt&quot; messageSecurityVersion=&quot;WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10&quot; requireDerivedKeys=&quot;false&quot; requireSignatureConfirmation=&quot;false&quot;&gt;&lt;localClientSettings detectReplays=&quot;true&quot; /&gt;&lt;localServiceSettings detectReplays=&quot;true&quot; /&gt;&lt;/security&gt;&lt;textMessageEncoding messageVersion=&quot;Soap11WSAddressing10&quot; /&gt;&lt;transactionFlow transactionProtocol=&quot;WSAtomicTransactionOctober2004&quot; /&gt;&lt;/Data&gt;" bindingType="customBinding" name="ServiceComPortBinding2" />
</bindings>
<endpoints>
<endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;http://122.255.63.44:7001/ServiceCom/ServiceCom&quot; binding=&quot;customBinding&quot; bindingConfiguration=&quot;ServiceComPortBinding2&quot; contract=&quot;BOCServiceReference.ServiceCom&quot; name=&quot;ServiceComPort1&quot; /&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;http://122.255.63.44:7001/ServiceCom/ServiceCom&quot; binding=&quot;customBinding&quot; bindingConfiguration=&quot;ServiceComPortBinding2&quot; contract=&quot;BOCServiceReference.ServiceCom&quot; name=&quot;ServiceComPort1&quot; /&gt;" contractName="BOCServiceReference.ServiceCom" name="ServiceComPort1" />
</endpoints>
</configurationSnapshot>

817
BankOfCeylon/Connected Services/BOCServiceReference/configuration91.svcinfo

@ -0,0 +1,817 @@
<?xml version="1.0" encoding="utf-8"?>
<SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="+Z2HMnSBI/PY4eaMQgFW2ucZLqI=">
<bindingConfigurations>
<bindingConfiguration bindingType="customBinding" name="ServiceComPortBinding2">
<properties>
<property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>ServiceComPortBinding2</serializedValue>
</property>
<property path="/closeTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/openTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/receiveTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/sendTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/unrecognizedPolicyAssertions" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UnrecognizedPolicyAssertionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UnrecognizedPolicyAssertionElement</serializedValue>
</property>
<property path="/transactionFlow" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.TransactionFlowElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.TransactionFlowElement</serializedValue>
</property>
<property path="/transactionFlow/transactionProtocol" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.TransactionProtocol, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>WSAtomicTransactionOctober2004</serializedValue>
</property>
<property path="/transactionFlow/allowWildcardAction" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.SecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.SecurityElement</serializedValue>
</property>
<property path="/security/defaultAlgorithmSuite" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Security.SecurityAlgorithmSuite, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Basic128</serializedValue>
</property>
<property path="/security/allowSerializedSigningTokenOnReply" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/enableUnsecuredResponse" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/authenticationMode" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Configuration.AuthenticationMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>UserNameForCertificate</serializedValue>
</property>
<property path="/security/requireDerivedKeys" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/securityHeaderLayout" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Channels.SecurityHeaderLayout, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Strict</serializedValue>
</property>
<property path="/security/includeTimestamp" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/allowInsecureTransport" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/keyEntropyMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.SecurityKeyEntropyMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>CombinedEntropy</serializedValue>
</property>
<property path="/security/issuedTokenParameters" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IssuedTokenParametersElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IssuedTokenParametersElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/defaultMessageSecurityVersion" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.MessageSecurityVersion, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/additionalRequestParameters" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.XmlElementElementCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Collection)</serializedValue>
</property>
<property path="/security/issuedTokenParameters/claimTypeRequirements" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ClaimTypeElementCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Collection)</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IssuedTokenParametersEndpointAddressElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IssuedTokenParametersEndpointAddressElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/address" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/headers/headers" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<property path="/security/issuedTokenParameters/issuer/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>My</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LocalMachine</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>FindBySubjectDistinguishedName</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuer/binding" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuer/bindingConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.EndpointAddressElementBase, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.EndpointAddressElementBase</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/address" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/headers/headers" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<property path="/security/issuedTokenParameters/issuerMetadata/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>My</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LocalMachine</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>FindBySubjectDistinguishedName</serializedValue>
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/issuerMetadata/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/issuedTokenParameters/keySize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/security/issuedTokenParameters/keyType" isComplexType="false" isExplicitlyDefined="false" clrType="System.IdentityModel.Tokens.SecurityKeyType, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>SymmetricKey</serializedValue>
</property>
<property path="/security/issuedTokenParameters/tokenType" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/issuedTokenParameters/useStrTransform" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/localClientSettings" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.LocalClientSecuritySettingsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.LocalClientSecuritySettingsElement</serializedValue>
</property>
<property path="/security/localClientSettings/cacheCookies" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/localClientSettings/detectReplays" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/localClientSettings/replayCacheSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>900000</serializedValue>
</property>
<property path="/security/localClientSettings/maxClockSkew" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/localClientSettings/maxCookieCachingTime" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>10675199.02:48:05.4775807</serializedValue>
</property>
<property path="/security/localClientSettings/replayWindow" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/localClientSettings/sessionKeyRenewalInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>10:00:00</serializedValue>
</property>
<property path="/security/localClientSettings/sessionKeyRolloverInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/localClientSettings/reconnectTransportOnFailure" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/localClientSettings/timestampValidityDuration" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/localClientSettings/cookieRenewalThresholdPercentage" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>60</serializedValue>
</property>
<property path="/security/localServiceSettings" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.LocalServiceSecuritySettingsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.LocalServiceSecuritySettingsElement</serializedValue>
</property>
<property path="/security/localServiceSettings/detectReplays" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/localServiceSettings/issuedCookieLifetime" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>10:00:00</serializedValue>
</property>
<property path="/security/localServiceSettings/maxStatefulNegotiations" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>128</serializedValue>
</property>
<property path="/security/localServiceSettings/replayCacheSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>900000</serializedValue>
</property>
<property path="/security/localServiceSettings/maxClockSkew" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/localServiceSettings/negotiationTimeout" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:01:00</serializedValue>
</property>
<property path="/security/localServiceSettings/replayWindow" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/localServiceSettings/inactivityTimeout" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:02:00</serializedValue>
</property>
<property path="/security/localServiceSettings/sessionKeyRenewalInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>15:00:00</serializedValue>
</property>
<property path="/security/localServiceSettings/sessionKeyRolloverInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/localServiceSettings/reconnectTransportOnFailure" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/localServiceSettings/maxPendingSessions" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>128</serializedValue>
</property>
<property path="/security/localServiceSettings/maxCachedCookies" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>1000</serializedValue>
</property>
<property path="/security/localServiceSettings/timestampValidityDuration" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/messageProtectionOrder" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Security.MessageProtectionOrder, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>SignBeforeEncrypt</serializedValue>
</property>
<property path="/security/protectTokens" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/messageSecurityVersion" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.MessageSecurityVersion, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10</serializedValue>
</property>
<property path="/security/requireSecurityContextCancellation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/requireSignatureConfirmation" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/canRenewSecurityContextToken" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.SecurityElementBase, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.SecurityElementBase</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/defaultAlgorithmSuite" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.SecurityAlgorithmSuite, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Default</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/allowSerializedSigningTokenOnReply" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/enableUnsecuredResponse" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/authenticationMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AuthenticationMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>SspiNegotiated</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/requireDerivedKeys" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/securityHeaderLayout" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Channels.SecurityHeaderLayout, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Strict</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/includeTimestamp" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/allowInsecureTransport" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/keyEntropyMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.SecurityKeyEntropyMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>CombinedEntropy</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IssuedTokenParametersElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IssuedTokenParametersElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/defaultMessageSecurityVersion" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.MessageSecurityVersion, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/additionalRequestParameters" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.XmlElementElementCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Collection)</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/claimTypeRequirements" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ClaimTypeElementCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Collection)</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IssuedTokenParametersEndpointAddressElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IssuedTokenParametersEndpointAddressElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/address" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/headers/headers" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>My</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LocalMachine</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>FindBySubjectDistinguishedName</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/binding" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuer/bindingConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.EndpointAddressElementBase, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.EndpointAddressElementBase</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/address" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/headers/headers" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>My</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LocalMachine</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>FindBySubjectDistinguishedName</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/issuerMetadata/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/keySize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/keyType" isComplexType="false" isExplicitlyDefined="false" clrType="System.IdentityModel.Tokens.SecurityKeyType, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>SymmetricKey</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/tokenType" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/secureConversationBootstrap/issuedTokenParameters/useStrTransform" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.LocalClientSecuritySettingsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.LocalClientSecuritySettingsElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/cacheCookies" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/detectReplays" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/replayCacheSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>900000</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/maxClockSkew" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/maxCookieCachingTime" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>10675199.02:48:05.4775807</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/replayWindow" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/sessionKeyRenewalInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>10:00:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/sessionKeyRolloverInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/reconnectTransportOnFailure" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/timestampValidityDuration" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localClientSettings/cookieRenewalThresholdPercentage" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>60</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.LocalServiceSecuritySettingsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.LocalServiceSecuritySettingsElement</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/detectReplays" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/issuedCookieLifetime" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>10:00:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/maxStatefulNegotiations" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>128</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/replayCacheSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>900000</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/maxClockSkew" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/negotiationTimeout" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:01:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/replayWindow" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/inactivityTimeout" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:02:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/sessionKeyRenewalInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>15:00:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/sessionKeyRolloverInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/reconnectTransportOnFailure" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/maxPendingSessions" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>128</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/maxCachedCookies" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>1000</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/localServiceSettings/timestampValidityDuration" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:05:00</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/messageProtectionOrder" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.MessageProtectionOrder, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>SignBeforeEncryptAndEncryptSignature</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/protectTokens" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/messageSecurityVersion" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.MessageSecurityVersion, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/requireSecurityContextCancellation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/requireSignatureConfirmation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/security/secureConversationBootstrap/canRenewSecurityContextToken" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/textMessageEncoding" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.TextMessageEncodingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.TextMessageEncodingElement</serializedValue>
</property>
<property path="/textMessageEncoding/maxReadPoolSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>64</serializedValue>
</property>
<property path="/textMessageEncoding/maxWritePoolSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>16</serializedValue>
</property>
<property path="/textMessageEncoding/messageVersion" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Channels.MessageVersion, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Soap11WSAddressing10</serializedValue>
</property>
<property path="/textMessageEncoding/readerQuotas" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement</serializedValue>
</property>
<property path="/textMessageEncoding/readerQuotas/maxDepth" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textMessageEncoding/readerQuotas/maxStringContentLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textMessageEncoding/readerQuotas/maxArrayLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textMessageEncoding/readerQuotas/maxBytesPerRead" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textMessageEncoding/readerQuotas/maxNameTableCharCount" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textMessageEncoding/writeEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.Text.Encoding, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Text.UTF8Encoding</serializedValue>
</property>
<property path="/httpTransport" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.HttpTransportElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.HttpTransportElement</serializedValue>
</property>
<property path="/httpTransport/manualAddressing" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/httpTransport/maxBufferPoolSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>524288</serializedValue>
</property>
<property path="/httpTransport/maxReceivedMessageSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>65536</serializedValue>
</property>
<property path="/httpTransport/allowCookies" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/httpTransport/requestInitializationTimeout" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:00:00</serializedValue>
</property>
<property path="/httpTransport/authenticationScheme" isComplexType="false" isExplicitlyDefined="false" clrType="System.Net.AuthenticationSchemes, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Anonymous</serializedValue>
</property>
<property path="/httpTransport/bypassProxyOnLocal" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/httpTransport/decompressionEnabled" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/httpTransport/hostNameComparisonMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HostNameComparisonMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>StrongWildcard</serializedValue>
</property>
<property path="/httpTransport/keepAliveEnabled" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/httpTransport/maxBufferSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>65536</serializedValue>
</property>
<property path="/httpTransport/maxPendingAccepts" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/httpTransport/messageHandlerFactory" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.HttpMessageHandlerFactoryElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.HttpMessageHandlerFactoryElement</serializedValue>
</property>
<property path="/httpTransport/messageHandlerFactory/handlers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DelegatingHandlerElementCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Collection)</serializedValue>
</property>
<property path="/httpTransport/messageHandlerFactory/type" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/httpTransport/proxyAddress" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/httpTransport/proxyAuthenticationScheme" isComplexType="false" isExplicitlyDefined="false" clrType="System.Net.AuthenticationSchemes, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Anonymous</serializedValue>
</property>
<property path="/httpTransport/realm" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/httpTransport/transferMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.TransferMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Buffered</serializedValue>
</property>
<property path="/httpTransport/unsafeConnectionNtlmAuthentication" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/httpTransport/useDefaultWebProxy" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>True</serializedValue>
</property>
<property path="/httpTransport/extendedProtectionPolicy" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement</serializedValue>
</property>
<property path="/httpTransport/extendedProtectionPolicy/policyEnforcement" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.PolicyEnforcement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Never</serializedValue>
</property>
<property path="/httpTransport/extendedProtectionPolicy/protectionScenario" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.ProtectionScenario, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>TransportSelected</serializedValue>
</property>
<property path="/httpTransport/extendedProtectionPolicy/customServiceNames" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ServiceNameElementCollection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Collection)</serializedValue>
</property>
<property path="/httpTransport/webSocketSettings" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.WebSocketTransportSettingsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.WebSocketTransportSettingsElement</serializedValue>
</property>
<property path="/httpTransport/webSocketSettings/transportUsage" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Channels.WebSocketTransportUsage, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Never</serializedValue>
</property>
<property path="/httpTransport/webSocketSettings/createNotificationOnConnection" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/httpTransport/webSocketSettings/keepAliveInterval" isComplexType="false" isExplicitlyDefined="false" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>00:00:00</serializedValue>
</property>
<property path="/httpTransport/webSocketSettings/subProtocol" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/httpTransport/webSocketSettings/disablePayloadMasking" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/httpTransport/webSocketSettings/maxPendingConnections" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
</properties>
</bindingConfiguration>
</bindingConfigurations>
<endpoints>
<endpoint name="ServiceComPort1" contract="BOCServiceReference.ServiceCom" bindingType="customBinding" address="http://122.255.63.44:7001/ServiceCom/ServiceCom" bindingConfiguration="ServiceComPortBinding2">
<properties>
<property path="/address" isComplexType="false" isExplicitlyDefined="true" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>http://122.255.63.44:7001/ServiceCom/ServiceCom</serializedValue>
</property>
<property path="/behaviorConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/binding" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>customBinding</serializedValue>
</property>
<property path="/bindingConfiguration" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>ServiceComPortBinding2</serializedValue>
</property>
<property path="/contract" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>BOCServiceReference.ServiceCom</serializedValue>
</property>
<property path="/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue>
</property>
<property path="/headers/headers" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>&lt;Header /&gt;</serializedValue>
</property>
<property path="/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue>
</property>
<property path="/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue>
</property>
<property path="/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue>
</property>
<property path="/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue>
</property>
<property path="/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue>
</property>
<property path="/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue>
</property>
<property path="/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue>
</property>
<property path="/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>My</serializedValue>
</property>
<property path="/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LocalMachine</serializedValue>
</property>
<property path="/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>FindBySubjectDistinguishedName</serializedValue>
</property>
<property path="/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>ServiceComPort1</serializedValue>
</property>
<property path="/kind" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/endpointConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
</properties>
</endpoint>
</endpoints>
</SavedWcfConfigurationInformation>

24
BankOfCeylon/Model/SendMoneyModel.cs

@ -0,0 +1,24 @@
namespace BankOfCeylon.Model
{
public class SendMoneyModel
{
public string CUSPIN { get; set; }
public string SENDERACCOUNTNO { get; set; }
public string CURRENCY { get; set; }
public string REMITTENCETYPE { get; set; }
public string SENDERNAME { get; set; }
public string BENEFICIARYNAME { get; set; }
public string BENEFICIARYADD { get; set; }
public string BENEFICIARYPHONE { get; set; }
public string BENEFICIARYID { get; set; }
public string BANKACCTNO { get; set; }
public string BANKNAME { get; set; }
public string BANKADDRESS { get; set; }
public string SENDERPHONE { get; set; }
public string SENDRESINFO { get; set; }
public string TRANSACTIONREF { get; set; }
public string SMSALERT { get; set; }
public double AMOUNT { get; set; }
public string CHARGE { get; set; }
}
}

36
BankOfCeylon/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("BankOfCeylon")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("BankOfCeylon")]
[assembly: AssemblyCopyright("Copyright © 2022")]
[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("76f39343-b64e-4ca6-8b20-76a81793645e")]
// 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")]

35
BankOfCeylon/Properties/Settings.Designer.cs

@ -0,0 +1,35 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace BankOfCeylon.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("https://www.combanksrv.com:7003/ServiceCom/ServiceCom")]
public string BankOfCeylon_BOCWebReference_Service {
get {
return ((string)(this["BankOfCeylon_BOCWebReference_Service"]));
}
}
}
}

9
BankOfCeylon/Properties/Settings.settings

@ -0,0 +1,9 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="BankOfCeylon.Properties" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="BankOfCeylon_BOCWebReference_Service" Type="System.String" Scope="Application">
<Value Profile="(Default)">https://www.combanksrv.com:7003/ServiceCom/ServiceCom</Value>
</Setting>
</Settings>
</SettingsFile>

28
BankOfCeylon/Settings.cs

@ -0,0 +1,28 @@
namespace BankOfCeylon.Properties {
// This class allows you to handle specific events on the settings class:
// The SettingChanging event is raised before a setting's value is changed.
// The PropertyChanged event is raised after a setting's value is changed.
// The SettingsLoaded event is raised after the setting values are loaded.
// The SettingsSaving event is raised before the setting values are saved.
internal sealed partial class Settings {
public Settings() {
// // To add event handlers for saving and changing settings, uncomment the lines below:
//
// this.SettingChanging += this.SettingChangingEventHandler;
//
// this.SettingsSaving += this.SettingsSavingEventHandler;
//
}
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
// Add code to handle the SettingChangingEvent event here.
}
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
// Add code to handle the SettingsSaving event here.
}
}
}

83
BankOfCeylon/app.config

@ -0,0 +1,83 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="BankOfCeylon.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<system.serviceModel>
<bindings>
<customBinding>
<binding name="ServiceComPortBinding">
<transactionFlow transactionProtocol="WSAtomicTransactionOctober2004" />
<security defaultAlgorithmSuite="Basic128" authenticationMode="UserNameForCertificate" requireDerivedKeys="false" securityHeaderLayout="Strict" includeTimestamp="true" keyEntropyMode="CombinedEntropy" messageProtectionOrder="SignBeforeEncrypt" messageSecurityVersion="WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10" requireSignatureConfirmation="false">
<localClientSettings cacheCookies="true" detectReplays="true" replayCacheSize="900000" maxClockSkew="00:05:00" maxCookieCachingTime="Infinite" replayWindow="00:05:00" sessionKeyRenewalInterval="10:00:00" sessionKeyRolloverInterval="00:05:00" reconnectTransportOnFailure="true" timestampValidityDuration="00:05:00" cookieRenewalThresholdPercentage="60" />
<localServiceSettings detectReplays="true" issuedCookieLifetime="10:00:00" maxStatefulNegotiations="128" replayCacheSize="900000" maxClockSkew="00:05:00" negotiationTimeout="00:01:00" replayWindow="00:05:00" inactivityTimeout="00:02:00" sessionKeyRenewalInterval="15:00:00" sessionKeyRolloverInterval="00:05:00" reconnectTransportOnFailure="true" maxPendingSessions="128" maxCachedCookies="1000" timestampValidityDuration="00:05:00" />
</security>
<textMessageEncoding maxReadPoolSize="64" maxWritePoolSize="16" messageVersion="Soap11WSAddressing10" writeEncoding="utf-8">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
</textMessageEncoding>
<httpsTransport maxReceivedMessageSize="2147483647" />
</binding>
<binding name="ServiceComPortBinding1">
<transactionFlow transactionProtocol="WSAtomicTransactionOctober2004" />
<!--The wsdl schema that was used to create this configuration file contained a 'RequireIssuerSerialReference' assertion for a X509Token. This can not be represented in configuration, you will need to programatically adjust the appropriate X509SecurityTokenParameters.X509KeyIdentifierClauseType to X509KeyIdentifierClauseType.IssuerSerial. The default of X509KeyIdentifierClauseType.Thumbprint will be used, which may cause interop issues.-->
<security defaultAlgorithmSuite="Basic128" authenticationMode="UserNameForCertificate" requireDerivedKeys="false" includeTimestamp="true" messageProtectionOrder="SignBeforeEncrypt" messageSecurityVersion="WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10" requireSignatureConfirmation="false">
<localClientSettings detectReplays="true" />
<localServiceSettings detectReplays="true" />
</security>
<textMessageEncoding messageVersion="Soap11WSAddressing10" />
<httpsTransport maxReceivedMessageSize="2147483647" />
</binding>
</customBinding>
</bindings>
<client>
<endpoint address="https://www.combanksrv.com:7003/ServiceCom/ServiceCom" behaviorConfiguration="defaultProfile" binding="customBinding" bindingConfiguration="ServiceComPortBinding" contract="BOCServiceReference.ServiceCom" name="ServiceComPort">
<identity>
<dns value="combanksrv.com" />
</identity>
</endpoint>
</client>
<behaviors>
<endpointBehaviors>
<behavior name="defaultProfile">
<clientCredentials>
<serviceCertificate>
<!-- path for client certificate-->
<defaultCertificate findValue="www.combanksrv.com" storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName" />
<authentication certificateValidationMode="None" />
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
<applicationSettings>
<BankOfCeylon.Properties.Settings>
<setting name="BankOfCeylon_BOCWebReference_Service" serializeAs="String">
<value>https://www.combanksrv.com:7003/ServiceCom/ServiceCom</value>
</setting>
</BankOfCeylon.Properties.Settings>
</applicationSettings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Unity.Abstractions" publicKeyToken="6d32ff45e0ccc69f" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.0.0" newVersion="2.2.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

4
BankOfCeylon/packages.config

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="log4net" version="2.0.8" targetFramework="net461" />
</packages>

84
BracBank/BracBank.csproj

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{F668B1CB-5655-4F36-9B52-2DD0F04826A7}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>BracBank</RootNamespace>
<AssemblyName>BracBank</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
</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="log4net">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\WEB-CORE\Swift.web\bin\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="RestSharp, Version=106.11.7.0, Culture=neutral, PublicKeyToken=598062e77f915f75, processorArchitecture=MSIL">
<HintPath>..\packages\RestSharp.106.11.7\lib\net452\RestSharp.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Web" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="BracBankApiService\BracBankAPI.cs" />
<Compile Include="digitalSignature.cs" />
<Compile Include="Model\AccountValidation.cs" />
<Compile Include="Model\BracResponse.cs" />
<Compile Include="Model\BracTranStatus.cs" />
<Compile Include="Model\GetCodes.cs" />
<Compile Include="Model\SendTxnModel.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Connected Services\" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Common\Common.csproj">
<Project>{d626fe23-51c8-4441-b3c7-92a54d1f572e}</Project>
<Name>Common</Name>
</ProjectReference>
<ProjectReference Include="..\Repository\Repository.csproj">
<Project>{3dede19d-6d7b-4825-b537-ccc7afc38f56}</Project>
<Name>Repository</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

1029
BracBank/BracBankApiService/BracBankAPI.cs
File diff suppressed because it is too large
View File

24
BracBank/Model/AccountValidation.cs

@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BracBank.Model
{
public class BracValidationRequest
{
public string AccountNumber { get; set; }
}
public class WalletValidationRequest
{
public int WalletPartner { get; set; }
public string WalletNo { get; set; }
public string WalletName { get; set; }
}
}

50
BracBank/Model/BracResponse.cs

@ -0,0 +1,50 @@
using Common.Models.DigitalSignature;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BracBank.Model
{
public class AccountValidationReponse : BracApiResponse
{
public AccountValidationData Data { get; set; }
}
public class AccountValidationData
{
public string AccountName { get; set; }
public string AccountNumber { get; set; }
}
public class WalletValidationReponse : BracApiResponse
{
public WalletValidationData Data { get; set; }
}
public class WalletValidationData
{
public string WalletNo { get; set; }
public string WalletName { get; set; }
public string MNOResponse { get; set; }
public string WalletStatusCode { get; set; }
public string WalletStatusDescription { get; set; }
}
public class AccountBalanceReponse : BracApiResponse
{
public AccountBalanceData Data { get; set; }
}
public class AccountBalanceData
{
public string AccountBalance { get; set; }
}
}

42
BracBank/Model/BracTranStatus.cs

@ -0,0 +1,42 @@
using Common.Models.DigitalSignature;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BracBank.Model
{
public class BracTranStatus
{
public string TTReferenceNo { get; set; }
public string PostedDateFrom { get; set; }
public string PostedDateTo { get; set; }
}
public class BracTranCancel
{
public string TTReferenceNo { get; set; }
public string Reason { get; set; }
}
public class BracTranCancelResponse: BracApiResponse
{
public string TTReferenceNo { get; set; }
}
public class BracTranStatusResponse: BracApiResponse
{
public List<DatumStatus> Data { get; set; }
}
public class DatumStatus
{
public string TTReferenceNo { get; set; }
public DateTime PostedDate { get; set; }
public double TTAmount { get; set; }
public DateTime PaymentDate { get; set; }
public string TTStatusCode { get; set; }
public string TTStatusDescription { get; set; }
}
}

63
BracBank/Model/GetCodes.cs

@ -0,0 +1,63 @@
using Common.Models.DigitalSignature;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BracBank.Model
{
public class GetBankCodes
{
public int QueryType { get; set; }
}
public class GetBranchCodes
{
public int QueryType { get; set; }
public int QuerySubType { get; set; }
}
public class GetBankCodesResponse: BracApiResponse
{
public List<BankDatum> Data { get; set; }
}
public class BankBranchResponse
{
public string BankBranchID { get; set; }
public string BankID { get; set; }
public string BankBranchName { get; set; }
}
public class BankDatum
{
public int CodeId { get; set; }
public string CodeName { get; set; }
public int ParentCodeId { get; set; }
public object ParentName { get; set; }
public string AdditionalData1 { get; set; }
public object AdditionalData2 { get; set; }
public DateTime LastUpdatedDate { get; set; }
}
public class GetBranchCodesResponse : BracApiResponse
{
public List<BranchDatum> Data { get; set; }
}
public class BranchDatum
{
public int Code { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public int BankId { get; set; }
public string BankName { get; set; }
public int ThanaId { get; set; }
public int DistrictId { get; set; }
public string RoutingNo { get; set; }
public DateTime LastUpdatedDate { get; set; }
}
}

58
BracBank/Model/SendTxnModel.cs

@ -0,0 +1,58 @@
using Common.Models.DigitalSignature;
namespace BracBank.Model
{
public class BracPostTransactionRequest
{
public string TTReferenceNo { get; set; }
public string BeneficiaryName { get; set; }
public string BeneficiaryPhoneNo { get; set; }
public string BeneficiaryIdentityType { get; set; }
public string BeneficiaryIdentityNumber { get; set; }
public string BeneficiaryFather { get; set; }
public string BeneficiaryMother { get; set; }
public string BeneficiaryDob { get; set; }
public string BeneficiaryAddress { get; set; }
public string BeneficiaryRelation { get; set; }
public string BeneficiaryAccountNo { get; set; }
public string DistrictISOCode { get; set; }
public string ThanaCode { get; set; }
public double TTAmount { get; set; }
public string SenderName { get; set; }
public string SenderAddress { get; set; }
public string SenderCountryCode { get; set; }
public string ModeOfPayment { get; set; }
public string SenderDocumentType { get; set; }
public string SenderDocumentNumber { get; set; }
public string SenderMsisdn { get; set; }
public string SenderNationality { get; set; }
public string SenderDob { get; set; }
public string RoutingNo { get; set; }
public string Purpose { get; set; }
public string BeneficiaryCountry { get; set; }
public string BeneficiaryCurrency { get; set; }
public int WalletPartner { get; set; }
public string SourceOfFunds { get; set; }
public string SenderCurrencyCode { get; set; }
public string SenderGender { get; set; }
public string BeneficiaryGender { get; set; }
public string Optional1 { get; set; }
public string Optional2 { get; set; }
public string Optional3 { get; set; }
public string Optional4 { get; set; }
public string Optional5 { get; set; }
public string Optional6 { get; set; }
}
public class BracPostTransactionResponse: BracApiResponse
{
public Data Data { get; set; }
}
public class Data
{
public string TTReferenceNo { get; set; }
}
}

22
BracBank/Model/TokenReponse.cs

@ -0,0 +1,22 @@
using Common.Models.DigitalSignature;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BracBank.Model
{
public class TokenData
{
public string Token { get; set; }
public int ExpiryTime { get; set; }
public string TokenType { get; set; }
}
public class TokenResponse : BracApiResponse
{
public TokenData Data { get; set; }
}
}

36
BracBank/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("BracBank")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("BracBank")]
[assembly: AssemblyCopyright("Copyright © 2022")]
[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("f668b1cb-5655-4f36-9b52-2dd0f04826a7")]
// 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")]

23
BracBank/app.config

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Unity.Abstractions" publicKeyToken="6d32ff45e0ccc69f" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.0.0" newVersion="2.2.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

12
BracBank/digitalSignature.cs

@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BracBank
{
public class digitalSignature
{
}
}

4
BracBank/packages.config

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<package id="log4net" version="2.0.8" targetFramework="net461" />
</configuration>

53
Business/App.config

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v13.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Unity.Abstractions" publicKeyToken="6d32ff45e0ccc69f" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.0.0" newVersion="2.2.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="PostcodeAnywhere_Soap" />
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws"
binding="basicHttpBinding" bindingConfiguration="PostcodeAnywhere_Soap"
contract="LoqateApi.PostcodeAnywhere_Soap" name="PostcodeAnywhere_Soap" />
</client>
</system.serviceModel>
</configuration>

264
Business/Business.csproj

@ -0,0 +1,264 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{143E1F73-BD44-4C9E-99D0-0768BF302285}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Business</RootNamespace>
<AssemblyName>Business</AssemblyName>
<TargetFrameworkVersion>v4.6.1</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="CommonServiceLocator, Version=2.0.1.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\CommonServiceLocator.dll</HintPath>
</Reference>
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<HintPath>..\packages\EntityFramework.6.1.0\lib\net45\EntityFramework.dll</HintPath>
</Reference>
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<HintPath>..\packages\EntityFramework.6.1.0\lib\net45\EntityFramework.SqlServer.dll</HintPath>
</Reference>
<Reference Include="JWT, Version=5.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\JWT.5.0.1\lib\net46\JWT.dll</HintPath>
</Reference>
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AspNet.Identity.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Identity.Core.2.2.1\lib\net45\Microsoft.AspNet.Identity.Core.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AspNet.Identity.EntityFramework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Identity.EntityFramework.2.2.1\lib\net45\Microsoft.AspNet.Identity.EntityFramework.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AspNet.Identity.Owin, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Identity.Owin.2.2.1\lib\net45\Microsoft.AspNet.Identity.Owin.dll</HintPath>
</Reference>
<Reference Include="Microsoft.IdentityModel.JsonWebTokens, Version=5.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.JsonWebTokens.5.4.0\lib\net461\Microsoft.IdentityModel.JsonWebTokens.dll</HintPath>
</Reference>
<Reference Include="Microsoft.IdentityModel.Logging, Version=5.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Logging.5.4.0\lib\net461\Microsoft.IdentityModel.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.IdentityModel.Tokens, Version=5.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Tokens.5.4.0\lib\net461\Microsoft.IdentityModel.Tokens.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Owin, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Owin.2.1.0\lib\net45\Microsoft.Owin.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Owin.Security, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Owin.Security.2.1.0\lib\net45\Microsoft.Owin.Security.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Owin.Security.Cookies, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Owin.Security.Cookies.2.1.0\lib\net45\Microsoft.Owin.Security.Cookies.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Owin.Security.OAuth, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Owin.Security.OAuth.2.1.0\lib\net45\Microsoft.Owin.Security.OAuth.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
</Reference>
<Reference Include="MoreLinq, Version=3.3.2.0, Culture=neutral, PublicKeyToken=384d532d7e88985d, processorArchitecture=MSIL">
<HintPath>..\packages\morelinq.3.3.2\lib\net451\MoreLinq.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
<HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.IdentityModel.Tokens.Jwt, Version=5.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\System.IdentityModel.Tokens.Jwt.5.4.0\lib\net461\System.IdentityModel.Tokens.Jwt.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http.Formatting, Version=5.2.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.5.2.7\lib\net45\System.Net.Http.Formatting.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Web" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.7\lib\net45\System.Web.Helpers.dll</HintPath>
</Reference>
<Reference Include="System.Web.Http, Version=5.2.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Core.5.2.7\lib\net45\System.Web.Http.dll</HintPath>
</Reference>
<Reference Include="System.Web.Http.WebHost, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.WebHost.5.2.3\lib\net45\System.Web.Http.WebHost.dll</HintPath>
</Reference>
<Reference Include="System.Web.Mvc, Version=5.2.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Mvc.5.2.7\lib\net45\System.Web.Mvc.dll</HintPath>
</Reference>
<Reference Include="System.Web.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Razor.3.2.7\lib\net45\System.Web.Razor.dll</HintPath>
</Reference>
<Reference Include="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.7\lib\net45\System.Web.WebPages.dll</HintPath>
</Reference>
<Reference Include="System.Web.WebPages.Deployment, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.7\lib\net45\System.Web.WebPages.Deployment.dll</HintPath>
</Reference>
<Reference Include="System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.7\lib\net45\System.Web.WebPages.Razor.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="Unity.Abstractions, Version=2.2.0.0, Culture=neutral, PublicKeyToken=6d32ff45e0ccc69f, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\Unity.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Unity.Configuration, Version=5.0.3.0, Culture=neutral, PublicKeyToken=6d32ff45e0ccc69f, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\Unity.Configuration.dll</HintPath>
</Reference>
<Reference Include="Unity.Container, Version=5.2.0.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\Unity.Container.dll</HintPath>
</Reference>
<Reference Include="Unity.Interception, Version=5.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\Unity.Interception.dll</HintPath>
</Reference>
<Reference Include="Unity.Interception.Configuration, Version=5.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\Unity.Interception.Configuration.dll</HintPath>
</Reference>
<Reference Include="Unity.RegistrationByConvention, Version=2.0.2.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\Unity.RegistrationByConvention.dll</HintPath>
</Reference>
<Reference Include="Unity.ServiceLocation, Version=2.0.3.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.5.2.0\lib\net45\Unity.ServiceLocation.dll</HintPath>
</Reference>
<Reference Include="Unity.WebApi, Version=5.3.0.0, Culture=neutral, PublicKeyToken=43da31bc42a85347, processorArchitecture=MSIL">
<HintPath>..\packages\Unity.WebAPI.5.3.0\lib\net45\Unity.WebApi.dll</HintPath>
</Reference>
<Reference Include="WebActivatorEx, Version=2.0.0.0, Culture=neutral, PublicKeyToken=7b26dc2a43f6a0d4, processorArchitecture=MSIL">
<HintPath>..\packages\WebActivatorEx.2.2.0\lib\net40\WebActivatorEx.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="BusinessLogic\Address\ILocateBusiness.cs" />
<Compile Include="BusinessLogic\Address\ServiceApi.cs" />
<Compile Include="BusinessLogic\Auth\AuthServices.cs" />
<Compile Include="BusinessLogic\Auth\IAuthServices.cs" />
<Compile Include="BusinessLogic\NotificationApiService\EmailService.cs" />
<Compile Include="BusinessLogic\NotificationApiService\FireBaseService.cs" />
<Compile Include="BusinessLogic\NotificationApiService\INotificationService.cs" />
<Compile Include="BusinessLogic\NotificationApiService\NotificationService.cs" />
<Compile Include="BusinessLogic\SMSApiService\ISMSService.cs" />
<Compile Include="BusinessLogic\SMSApiService\SMSService.cs" />
<Compile Include="BusinessLogic\TPApiServices\Factory\ApiFactoryServices.cs" />
<Compile Include="BusinessLogic\TPApiServices\Factory\IApiFactoryServices.cs" />
<Compile Include="BusinessLogic\TPApiServices\TPServices\IThirdPartyServices.cs" />
<Compile Include="BusinessLogic\TPApiServices\TPServices\ThirdPartyServices.cs" />
<Compile Include="Connected Services\LoqateApi\Reference.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Reference.svcmap</DependentUpon>
</Compile>
<Compile Include="DIConfig\UnityConfig.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="TokenManagement\ITokenManagementServices.cs" />
<Compile Include="TokenManagement\TokenManagementServices.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\BankOfCeylon\BankOfCeylon.csproj">
<Project>{76f39343-b64e-4ca6-8b20-76a81793645e}</Project>
<Name>BankOfCeylon</Name>
</ProjectReference>
<ProjectReference Include="..\BracBank\BracBank.csproj">
<Project>{f668b1cb-5655-4f36-9b52-2dd0f04826a7}</Project>
<Name>BracBank</Name>
</ProjectReference>
<ProjectReference Include="..\Cebuana\Cebuana.csproj">
<Project>{80f5422a-4706-450c-8795-8edaee47f48c}</Project>
<Name>Cebuana</Name>
</ProjectReference>
<ProjectReference Include="..\Common\Common.csproj">
<Project>{d626fe23-51c8-4441-b3c7-92a54d1f572e}</Project>
<Name>Common</Name>
</ProjectReference>
<ProjectReference Include="..\Donga\Donga.csproj">
<Project>{24E7AA99-A828-4E76-A786-6C62BE7588E7}</Project>
<Name>Donga</Name>
</ProjectReference>
<ProjectReference Include="..\GMENepal\GMENepal.csproj">
<Project>{0F5ACC33-43D7-46D3-BB17-0F067EAEE173}</Project>
<Name>GMENepal</Name>
</ProjectReference>
<ProjectReference Include="..\Repository\Repository.csproj">
<Project>{3dede19d-6d7b-4825-b537-ccc7afc38f56}</Project>
<Name>Repository</Name>
</ProjectReference>
<ProjectReference Include="..\Transfast\Transfast.csproj">
<Project>{5a7b31a2-b799-4bae-8ece-12afb8eaa3cb}</Project>
<Name>Transfast</Name>
</ProjectReference>
<ProjectReference Include="..\Wing\Wing.csproj">
<Project>{1505C180-8ED5-4357-B759-4EA68E74D047}</Project>
<Name>Wing</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="Connected Services\LoqateApi\Business.LoqateApi.Capture_Interactive_Find_v1_10Response.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\LoqateApi\Business.LoqateApi.Capture_Interactive_Find_v1_10_ArrayOfResults.datasource">
<DependentUpon>Reference.svcmap</DependentUpon>
</None>
<None Include="Connected Services\LoqateApi\wsdlnew.wsdl" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Folder Include="BusinessLogic\Signature\" />
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Connected Services\" />
</ItemGroup>
<ItemGroup>
<WCFMetadataStorage Include="Connected Services\LoqateApi\" />
</ItemGroup>
<ItemGroup>
<None Include="Connected Services\LoqateApi\configuration91.svcinfo" />
</ItemGroup>
<ItemGroup>
<None Include="Connected Services\LoqateApi\configuration.svcinfo" />
</ItemGroup>
<ItemGroup>
<None Include="Connected Services\LoqateApi\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

14
Business/BusinessLogic/Address/ILocateBusiness.cs

@ -0,0 +1,14 @@
using Common.Models.RequestResponse;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Business.BusinessLogic.Address
{
public interface ILocateBusiness
{
TPResponse QueryAddress(string postCode);
}
}

103
Business/BusinessLogic/Address/ServiceApi.cs

@ -0,0 +1,103 @@
using Business.LoqateApi;
using Common.Models.Loqate;
using Common.Models.RequestResponse;
using log4net;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Business.BusinessLogic.Address
{
public class ServiceApi
{
public string _key { get; set; }
PostcodeAnywhere_SoapClient _SoapClient { get; set; }
public ServiceApi()
{
_key = ConfigurationManager.AppSettings["loqatekey"].ToString();
_SoapClient = new PostcodeAnywhere_SoapClient();
}
public Capture_Interactive_Find_v1_10_ArrayOfResults Find_v1_10(string search)
{
return _SoapClient.Capture_Interactive_Find_v1_10(_key, search, true, null, null, "GB", 20, "en-gb", false, "", "");
}
public Capture_Interactive_Find_v1_10_ArrayOfResults Find_v1_10(string search, string container)
{
return _SoapClient.Capture_Interactive_Find_v1_10(_key, search, true, container, "", "GB", 20, "en-gb", false, "", "");
}
}
public class LocateBusiness:ILocateBusiness
{
private static readonly ILog Log = LogManager.GetLogger(typeof(LocateBusiness));
ServiceApi serviceApi { get; set; }
public LocateBusiness()
{
serviceApi = new ServiceApi();
}
public TPResponse QueryAddress(string postCode)
{
TPResponse rxResponse = new TPResponse() { ResponseCode = "1", Msg = "No Data found" };
var results = serviceApi.Find_v1_10(postCode);
Log.Debug(Newtonsoft.Json.JsonConvert.SerializeObject(results));
if (results != null && results.Any())
{
var single = results.FirstOrDefault();
if (single != null && single.Type.Equals("Postcode"))
{
rxResponse.ResponseCode = "0";
rxResponse.Msg = "Post code found";
var result2 = serviceApi.Find_v1_10(postCode, single.Id);
QueryResponse queryResponsse = new QueryResponse();
queryResponsse.Addresses = new List<Common.Models.Loqate.Address>();
foreach (Capture_Interactive_Find_v1_10_Results item in result2)
{
queryResponsse.Addresses.Add(new Common.Models.Loqate.Address()
{
Id = item.Id,
Type = item.Type,
Address1 = item.Text,
City = item.Description.Substring(0, item.Description.LastIndexOf(",")),
Address2= item.Description
});
}
rxResponse.Data = queryResponsse;
}
}
else
{
rxResponse.Msg = "No result!";
}
return rxResponse;
}
}
}

52
Business/BusinessLogic/Auth/AuthServices.cs

@ -0,0 +1,52 @@
using Common.Models;
using Repository.DAO.Application;
using System;
using System.Linq;
using System.Text.RegularExpressions;
namespace Business.BusinessLogic.Auth
{
public class AuthServices : ApplicationDAO, IAuthServices
{
public TokenManageModel GetUserDetails(TokenManageModel userModel)
{
userModel = new TokenManageModel()
{
ApiAccessKey = "KPb1ttRs3CJnORpVU8SmAKUs7a42vtvjzQ47gU0b4u0vxAEI0PgZref6puzkVhLTX2PRNMGCbnb2TglupsjV5AGhYvw8a8POTcUcFSrEdHmTkhkIGNvUvxSpKjUOXGFQWaGU1bxoqqUSaFOmNE5zGojVmwPoMy38CNLwnpQKjdsIuxCKGCApa2gWHJl9gebmIpUODv9jAZgmMEaXqyR4CLg4iSksfTyYNjdqxEE88P5THYt5GuNk8Ti6K2RxIKfPWY49hBOpiYnXcApgSDiKFYqQG9WuZ7cvDGJIWg5WgWKjGle8Y3OydhONXVkN5OMPXDA4VZkK4c5nM363Zkg4w4qdzWuwhsEoAwU4rej6sMRZue3L0BowBJja1OK0iPoTX70EexX8rviMLOZPUDwhxzkL3eODS69VEEbjHb8WSjhho5h3KnCE4tcqCWihwSZ8Yuyhw1rzIMNw2C8pN1GEJyXc6goIFkf7dmK9ynJSxu52D9GjOkKqoD7dFNFulOFVfgeCuhPDYG2A2c2RSvGHv24VDXvmGVaAMLiPtsTz5oD8f0na7fX1xGg0Qveh0KgQL5THnrMK6gm5Ky7O8nbecIxY",
AppId = "123456790",
Audience = "LocalUser",
Issuer = "LocalUser",
Password = "Anoj@123456789",
UserName = "Anoj1",
ExpiresTime = DateTime.Now.AddMinutes(1000),
SecrateKey = "5401b09eab3c013d4ca54922bb802bec8fd5318192b0a75f201d8b3727429090fb337591abd3e44453b954555b7a0812e1081c39b740293f765eae731f5a65ed1"
};
userModel.tokenUser = (!string.IsNullOrWhiteSpace(userModel.UserName) ? Regex.Replace(userModel.UserName, "\\s", "_") : userModel.UserName) +
(!string.IsNullOrWhiteSpace(userModel.Password) ? "|" + userModel.Password : "") + (!string.IsNullOrWhiteSpace(userModel.AppId) ? "|" + userModel.AppId : "")
+ (!string.IsNullOrWhiteSpace(userModel.ApiAccessKey) ? "|" + userModel.ApiAccessKey : "") + (!string.IsNullOrWhiteSpace(userModel.SecrateKey) ? "|" + userModel.SecrateKey : "")
+ (!string.IsNullOrWhiteSpace(userModel.Issuer) ? "|" + userModel.Issuer : "") + (!string.IsNullOrWhiteSpace(userModel.Audience) ? "|" + userModel.Audience : "");
return userModel;
}
public TokenManageModel GetUserDetailsByUserTokenDetailsValue(string userTokenNo)
{
var tokenModel = new TokenManageModel();
var splitUserToken = userTokenNo.Split('|');
if (splitUserToken.Count() >= 1)
tokenModel.UserName = Regex.Replace(splitUserToken[0], "_", " ");
if (splitUserToken.Count() >= 2)
tokenModel.Password = splitUserToken[1];
if (splitUserToken.Count() >= 3)
tokenModel.AppId = splitUserToken[2];
if (splitUserToken.Count() >= 4)
tokenModel.ApiAccessKey = splitUserToken[3];
if (splitUserToken.Count() >= 5)
tokenModel.SecrateKey = splitUserToken[4];
if (splitUserToken.Count() >= 6)
tokenModel.Issuer = splitUserToken[5];
if (splitUserToken.Count() >= 7)
tokenModel.Audience = splitUserToken[6];
return tokenModel;
}
}
}

12
Business/BusinessLogic/Auth/IAuthServices.cs

@ -0,0 +1,12 @@
using Common.Models;
using Repository.DAO.Application;
namespace Business.BusinessLogic.Auth
{
public interface IAuthServices : IApplicationDAO
{
TokenManageModel GetUserDetails(TokenManageModel UserModel);
TokenManageModel GetUserDetailsByUserTokenDetailsValue(string userTokenNo);
}
}

226
Business/BusinessLogic/NotificationApiService/EmailService.cs

@ -0,0 +1,226 @@
using Common.Models.Confiq;
using Common.Models.Enums;
using Common.Models.Notification;
using Common.Models.RequestResponse;
using Common.Utility;
using log4net;
using Newtonsoft.Json;
using Repository.DAO.ThirdParty;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net.Mail;
using System.Net.Mime;
using System.Text;
using System.Threading.Tasks;
namespace Business.BusinessLogic.NotificationApiService
{
public class EmailService
{
private readonly ILog _log = LogManager.GetLogger(typeof(EmailService));
private readonly IThirdPartyRepo _thirdPartyRepo;
public EmailService()
{
_thirdPartyRepo = new ThirdPartyRepo();
}
public TPResponse SendEmail(SendNotificationRequest model)
{
TPResponse _tPResponse = new TPResponse();
// _log.Info($"IsBulkNotification {model.IsBulkNotification}");
List<TPResponse> tPResponses = new List<TPResponse>();
Task.Run(() =>
{
model.Recipients.ForEach(x =>
{
tPResponses.Add(Email(x, model.Template));
});
}).ContinueWith(y =>
{
_log.Debug($"SendEmail Responses {JsonConvert.SerializeObject(tPResponses)}");
_tPResponse.Data = tPResponses;
//tPResponses.Where(x => x.ResponseCode.Equals("0")).ToList().ForEach(z =>
//{
// _thirdPartyRepo.UpdateNotificationStatus(z.Id);
//});
});
_tPResponse.ResponseCode = "0";
_tPResponse.Msg = "Email sent succesfully. Check log for details.";
return _tPResponse;
}
private TPResponse Email(RecipientViewModel model, NotifyTemplate template = NotifyTemplate.NONE)
{
TPResponse _tPResponse = new TPResponse() { ResponseCode = "1", Id = model.Address };
SmtpClient SmtpServer = new SmtpClient();
MailMessage mail = new MailMessage();
_log.Info($"Sending email for {model.Address}");
try
{
if (model.MailAddress != null && !string.IsNullOrEmpty(model.MailAddress.FromEmail))
{
mail.From = new MailAddress(model.MailAddress.FromEmail, model.MailAddress.AliasName ?? string.Empty);
}
if (!string.IsNullOrEmpty(model.Address))
{
mail.To.Add(model.Address);
}
if (!string.IsNullOrEmpty(model.CcAddress))
{
mail.To.Add(model.CcAddress);
}
if (!string.IsNullOrEmpty(model.BccAddress))
{
mail.To.Add(model.BccAddress);
}
if (model.NotificationContent.Attachments != null)
{
foreach (var item in model.NotificationContent.Attachments)
{
Attachment attachment = null;
if (!string.IsNullOrEmpty(item.FilePath))
{
attachment = new Attachment(item.FilePath, item.FileType);
}
else
{
var bytes = Convert.FromBase64String(item.Byte64String);
MemoryStream strm = new MemoryStream(bytes);
attachment = new Attachment(strm, item.FileName);
}
if (attachment != null)
{
ContentDisposition disposition = attachment.ContentDisposition;
disposition.Inline = true;
disposition.FileName = Path.GetFileName(item.FileName);
disposition.DispositionType = DispositionTypeNames.Attachment;
mail.Attachments.Add(attachment);
}
}
}
if (model.NotificationContent.EmbeddedResources != null)
{
if (model.NotificationContent.EmbeddedResources.Any())
{
AlternateView vw = GetEmbeddedImage(model.NotificationContent.EmbeddedResources, model.NotificationContent.Body);
mail.AlternateViews.Add(vw);
}
}
mail.Subject = model.NotificationContent.Title;
mail.IsBodyHtml = true;
if (template != NotifyTemplate.NONE)
{
var templatePath = Helpers.GetMapping(Common.Models.Enums.MappingType.EMAIL_TEMPLATE, template.ToString());
string fullPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, templatePath.DValue);
mail.Subject = templatePath.DText;
string body = string.Empty;
using (StreamReader reader = new StreamReader(fullPath))
{
body = reader.ReadToEnd();
}
if (!string.IsNullOrEmpty(model.NotificationContent.Body) && !model.NotificationContent.Body.StartsWith("<img"))
{
List<Mapping> mappings = JsonConvert.DeserializeObject<List<Mapping>>(model.NotificationContent.Body);
mappings.ForEach(x =>
{
body = body.Replace(string.Format("{{{0}}}", x.SValue), x.SText);
});
}
mail.Body = body;
}
else
mail.Body = model.NotificationContent.Body;
// SmtpServer.Timeout = 25000;
SmtpServer.Send(mail);
mail.Dispose();
SmtpServer.Dispose();
_tPResponse.ResponseCode = "0";
_tPResponse.Id = model.BroadCastNoticeId.ToString();
_tPResponse.Msg = _tPResponse.ResponseCode.Equals("0") ? "Email Sent Sucessfully." : "Email Sending Failed.";
_thirdPartyRepo.UpdateNotificationStatus(model.BroadCastNoticeId.ToString());
_log.Info($"Sending email for {model.Address} | {JsonConvert.SerializeObject(_tPResponse)}");
}
catch (SmtpFailedRecipientsException ex)
{
for (int i = 0; i < ex.InnerExceptions.Length; i++)
{
SmtpStatusCode status = ex.InnerExceptions[i].StatusCode;
if (status == SmtpStatusCode.MailboxBusy || status == SmtpStatusCode.MailboxUnavailable)
{
// Console.WriteLine("Delivery failed - retrying in 5 seconds.");
System.Threading.Thread.Sleep(5000);
SmtpServer.Send(mail);
}
else
{
// Console.WriteLine("Failed to deliver message to {0}", ex.InnerExceptions[i].FailedRecipient);
//throw ex;
_tPResponse.Msg = ex.Message;
_log.Error($"Error Sending email for {model.Address}", ex);
}
}
_tPResponse.ResponseCode = "1";
}
catch (Exception ex)
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = ex.Message;
_log.Error($"Error Sending email for {model.Address}", ex);
}
finally
{
// SmtpServer.Dispose();
}
return _tPResponse;
}
private AlternateView GetEmbeddedImage(List<AttachmentModel> attachmentList, string htmlBody)
{
AlternateView alternateView = AlternateView.CreateAlternateViewFromString(htmlBody, null, MediaTypeNames.Text.Html);
foreach (var item in attachmentList)
{
byte[] bytes = System.Convert.FromBase64String(item.Byte64String);
LinkedResource res = new LinkedResource(new MemoryStream(bytes), item.FileType);
res.ContentId = item.FileName;
alternateView.LinkedResources.Add(res);
}
return alternateView;
}
}
}

316
Business/BusinessLogic/NotificationApiService/FireBaseService.cs

@ -0,0 +1,316 @@
using Common.Models.Confiq;
using Common.Models.Enums;
using Common.Models.Notification;
using Common.Models.RequestResponse;
using Common.Utility;
using log4net;
using MoreLinq;
using Newtonsoft.Json;
using Repository.DAO.ThirdParty;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Dynamic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Web.Script.Serialization;
namespace Business.BusinessLogic.NotificationApiService
{
public class FireBaseService
{
private readonly ILog _log = LogManager.GetLogger(typeof(FireBaseService));
private readonly IThirdPartyRepo _thirdPartyRepo;
public FireBaseService()
{
_thirdPartyRepo = new ThirdPartyRepo();
}
public TPResponse PushNotify(SendNotificationRequest model)
{
TPResponse _tPResponse = new TPResponse();
//_log.Info($"IsBulkNotification {model.IsBulkNotification}");
List<TPResponse> tPResponses = new List<TPResponse>();
Task.Run(() =>
{
Notify(model);
}).ContinueWith(y =>
{
_log.Debug($"PushNotify Responses {JsonConvert.SerializeObject(tPResponses)}");
//tPResponses.Where(x => x.ResponseCode.Equals("0")).ToList().ForEach(z =>
//{
// _thirdPartyRepo.UpdateNotificationStatus(z.Id);
//});
});
_tPResponse.ResponseCode = "0";
_tPResponse.Msg = "PushNotify Sent Sucessfully.";
return _tPResponse;
}
private void Notify(SendNotificationRequest model)
{
try
{
if (!model.Recipients.Any())
{
_log.Info("Recipient(s) are empty.");
return;
}
var applicationId = ConfigurationManager.AppSettings["FcmAuthorizationHeader"];
var senderId = ConfigurationManager.AppSettings["fcmSenderId"];
var langauge = string.IsNullOrEmpty(model.Language) ? ConfigurationManager.AppSettings["lang"] : model.Language;
var serializer = new JavaScriptSerializer();
if (model.IsBulkNotification)
{
foreach (var batch in model.Recipients.GroupBy(c => c.DeviceType).ToList())
{
var templatejson = Helpers.GetMapping(Common.Models.Enums.MappingType.PUSH_NOTIFY_TEMPLATE, model.Template.ToString(), langauge);
var deviceType = batch.Key;
var title = batch.First().NotificationContent.Title ?? GetStatic.ReadWebConfig("PushNotifyAlertTitle", "");
var body = batch.First().NotificationContent.Body;
var image = batch.First().NotificationContent.Image;
var navigateURL = batch.First().NotificationContent.NavigateURL;
var clickActivity = batch.First().NotificationContent.ClickActivity;
var messageType = batch.First().NotificationContent.MessageType;
if (model.Template != NotifyTemplate.NONE)
{
if (!string.IsNullOrEmpty(body))
{
List<Mapping> mappings = JsonConvert.DeserializeObject<List<Mapping>>(body);
body = templatejson.SText;
mappings.ForEach(x =>
{
body = body.Replace(string.Format("{{{0}}}", x.SValue), x.SText);
});
}
title = templatejson.DText;
}
foreach (var batchDevice in batch.Batch(100))
{
var recipientsList = batchDevice.Select(c => c.Address).Distinct().ToList();
string json;
if (deviceType == DeviceType.Android.ToString())
{
var data = new
{
registration_ids = recipientsList.ToArray(),
notification = new
{
body,
title,
sound = "Enabled",
click_action = clickActivity ?? string.Empty,
message_type = messageType ?? string.Empty
},
data = new
{
image = image ?? string.Empty,
url = navigateURL ?? string.Empty
}
};
json = serializer.Serialize(data);
}
else
{
var data = new
{
registration_ids = recipientsList.ToArray(),
content_available = true,
mutable_content = true,
notification = new
{
body,
title,
sound = "Enabled",
click_action = clickActivity ?? string.Empty,
message_type = messageType ?? string.Empty
},
data = new
{
mediaUrl = string.IsNullOrEmpty(image) ? string.Empty : ConfigurationManager.AppSettings["ApplicationMainUrl"] + "api/" + image,
url = navigateURL ?? string.Empty
}
};
json = serializer.Serialize(data);
}
Invoke(applicationId, senderId, json);
}
}
// _thirdPartyRepo.UpdateNotificationStatus(model.ToString());
}
else
{
string body;
string title;
var templatejson = Helpers.GetMapping(Common.Models.Enums.MappingType.PUSH_NOTIFY_TEMPLATE, model.Template.ToString(), langauge);
foreach (var batch in model.Recipients)
{
if (model.Template != NotifyTemplate.NONE)
{
body = templatejson.SText;
if (!string.IsNullOrEmpty(batch.NotificationContent.Body))
{
List<Mapping> mappings = JsonConvert.DeserializeObject<List<Mapping>>(batch.NotificationContent.Body);
mappings.ForEach(x =>
{
body = body.Replace(string.Format("{{{0}}}", x.SValue), x.SText);
});
}
title = templatejson.DText;
}
else
{
body = batch.NotificationContent.Body;
title = batch.NotificationContent.Title ?? GetStatic.ReadWebConfig("PushNotifyAlertTitle", "JME");
}
string json;
if (batch.DeviceType == DeviceType.Android.ToString())
{
var data = new
{
to = batch.Address,
notification = new
{
body = body,
title = batch.NotificationContent.Title ?? GetStatic.ReadWebConfig("PushNotifyAlertTitle", "JME"),
sound = "Enabled",
click_action = batch.NotificationContent.ClickActivity ?? string.Empty,
message_type = batch.NotificationContent.MessageType ?? string.Empty
},
data = new
{
image = batch.NotificationContent.Image ?? string.Empty,
url = batch.NotificationContent.NavigateURL ?? string.Empty
}
};
json = serializer.Serialize(data);
}
else
{
var data = new
{
to = batch.Address,
content_available = true,
mutable_content = true,
notification = new
{
body = body,
title = batch.NotificationContent.Title ?? GetStatic.ReadWebConfig("PushNotifyAlertTitle", "JME"),
sound = "Enabled",
click_action = batch.NotificationContent.ClickActivity ?? string.Empty,
message_type = batch.NotificationContent.MessageType ?? string.Empty
},
data = new
{
url = batch.NotificationContent.NavigateURL ?? string.Empty,
mediaUrl = string.IsNullOrEmpty(batch.NotificationContent.Image) ? string.Empty : ConfigurationManager.AppSettings["ApplicationMainUrl"] + "api/" + batch.NotificationContent.Image
}
};
json = serializer.Serialize(data);
}
Invoke(applicationId, senderId, json);
}
}
model.Recipients.ForEach(x =>
{
_thirdPartyRepo.UpdateNotificationStatus(x.BroadCastNoticeId.ToString());
});
}
catch (Exception ex)
{
_log.Error("FireBaseService Exception", ex);
}
}
private void Invoke(string applicationId, string senderId, string json)
{
var tRequest = WebRequest.Create(ConfigurationManager.AppSettings["GoogleFcm"].ToString());
tRequest.Method = "post";
tRequest.ContentType = "application/json";
var byteArray = Encoding.UTF8.GetBytes(json);
tRequest.Headers.Add($"Authorization: key={applicationId}");
tRequest.Headers.Add($"Sender: id={senderId}");
tRequest.ContentLength = byteArray.Length;
var serializer = new JavaScriptSerializer();
try
{
using (var dataStream = tRequest.GetRequestStream())
{
dataStream.Write(byteArray, 0, byteArray.Length);
using (var tResponse = tRequest.GetResponse())
{
using (var dataStreamResponse = tResponse.GetResponseStream())
{
using (var tReader = new StreamReader(dataStreamResponse))
{
var sResponseFromServer = tReader.ReadToEnd();
var str = sResponseFromServer;
try
{
//dynamic reply = new System.Dynamic.ExpandoObject();
//reply.Response = str;
//reply.Data = str;
var js = new JavaScriptSerializer();
_log.Info($"REQUEST {json} | RESPONSE {str}");
}
catch (Exception)
{
// ignored
}
}
}
}
}
}
catch (Exception ex)
{
_log.Error("Google FCM Api Invoke failed Exception", ex);
}
}
}
}

11
Business/BusinessLogic/NotificationApiService/INotificationService.cs

@ -0,0 +1,11 @@
using Common.Models.Notification;
using Common.Models.RequestResponse;
using Common.Models.SendSMS;
namespace Business.BusinessLogic.NotificationApiService
{
public interface INotificationService
{
TPResponse NotificationApiMethod(SendNotificationRequest model);
}
}

72
Business/BusinessLogic/NotificationApiService/NotificationService.cs

@ -0,0 +1,72 @@
using Common.Models.Notification;
using Common.Models.RequestResponse;
using Common.Models.SendSMS;
using Common.Utility;
using log4net;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Net.Mail;
using System.Net.Mime;
using System.Threading.Tasks;
namespace Business.BusinessLogic.NotificationApiService
{
public class NotificationService : INotificationService
{
private readonly ILog _log = LogManager.GetLogger(typeof(NotificationService));
public NotificationService()
{
}
public TPResponse NotificationApiMethod(SendNotificationRequest model)
{
var map = Helpers.GetMapping(Common.Models.Enums.MappingType.NOTIFICATION_TYPE, model.NotificationTypeId);
var response = new TPResponse();
switch (map.DValue)
{
case "P":
response = new FireBaseService().PushNotify(model);
break;
case "E":
response = new EmailService().SendEmail(model);
break;
case "S":
response = SendSMS(model);
break;
default:
response = new TPResponse() { ResponseCode = "1", Msg = "No Method Found." };
break;
}
return response;
}
private TPResponse SendSMS(SendNotificationRequest model)
{
TPResponse _tPResponse = new TPResponse() { ResponseCode = "1" };
return _tPResponse;
}
private TPResponse SendPushNotification(SendNotificationRequest model)
{
TPResponse _tPResponse = new TPResponse() { ResponseCode = "1" };
return _tPResponse;
}
}
}

10
Business/BusinessLogic/SMSApiService/ISMSService.cs

@ -0,0 +1,10 @@
using Common.Models.RequestResponse;
using Common.Models.SendSMS;
namespace Business.BusinessLogic.SMSApiService
{
public interface ISMSService
{
TPResponse SMSApiMethod(SMSRequestModel model);
}
}

191
Business/BusinessLogic/SMSApiService/SMSService.cs

@ -0,0 +1,191 @@
using Common.Models.RequestResponse;
using Common.Models.SendSMS;
using Common.Utility;
using log4net;
using System;
using System.Net.Http;
using System.Net.Http.Headers;
namespace Business.BusinessLogic.SMSApiService
{
public class SMSService : ISMSService
{
private readonly ILog _log = LogManager.GetLogger(typeof(SMSService));
private readonly string _baseUrl;
private readonly string _baseUrlStatus;
private readonly string _userName;
private readonly string _password;
private readonly string _senderId;
private readonly string _langType;
public SMSService()
{
_baseUrl = GetStatic.ReadWebConfig("onewaysmsURL", "");
_baseUrlStatus = GetStatic.ReadWebConfig("onewaysmsURLStatus", "");
_userName = GetStatic.ReadWebConfig("onewaysmsUserName", "");
_password = GetStatic.ReadWebConfig("onewaysmsPassword", "");
_senderId = GetStatic.ReadWebConfig("onewaysmsSenderId", "");
_langType = GetStatic.ReadWebConfig("onewaysmsLangType", "");
}
public TPResponse SMSApiMethod(SMSRequestModel model)
{
TPResponse _tPResponse = new TPResponse() { ResponseCode = "1" };
string _qs = "";
if (model.method.ToLower() == "send")
{
if (model.MobileNumber.Replace("+", "").Equals("817044652959"))
{
_qs = "?apiusername=" + _userName + "&apipassword=" + _password + "&mobileno=" + model.MobileNumber;
_qs += "&senderid=" + _senderId + "&languagetype=" + _langType + "&message=" + model.SMSBody + " dt: " + DateTime.Now.ToString("yyyyMMddhmmss"); ;
}
else
{
_qs = "?apiusername=" + _userName + "&apipassword=" + _password + "&mobileno=" + model.MobileNumber;
_qs += "&senderid=" + _senderId + "&languagetype=" + _langType + "&message=" + model.SMSBody;
}
_tPResponse = CallTPApi(_qs, "get", model.method, _baseUrl);
}
else if (model.method.ToLower() == "status")
{
_qs = "?mtid=" + model.MTID;
_tPResponse = CallTPApi(_qs, "get", model.method, _baseUrlStatus);
}
return _tPResponse;
}
public TPResponse CallTPApi(string _apiUrl, string _methodType, string _requestType, string _baseURLAPI)
{
_log.Debug("Calling API for " + _requestType + " with request:" + _apiUrl);
TPResponse _tPResponse = new TPResponse() { ResponseCode = "1" };
using (HttpClient httpClient = new HttpClient())
{
try
{
//var _response = "";
//HttpWebRequest _httpRequest = (HttpWebRequest)WebRequest.Create(_baseURLAPI + _apiUrl);
//_httpRequest.ContentType = "application/json";
//_httpRequest.Method = "GET";
//var _httpResponse = (HttpWebResponse)_httpRequest.GetResponse();
//using (var _streamReader = new StreamReader(_httpResponse.GetResponseStream()))
//{
// _response = _streamReader.ReadToEnd().ToString();
//}
//_log.Debug(_response);
//_tPResponse = ParseResponseMsg(_response, _requestType);
//return _tPResponse;
httpClient.BaseAddress = new Uri(_baseURLAPI);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/x-www-formurlencoded"));
short timeOut = Convert.ToInt16(GetStatic.ReadWebConfig("transfast_apiTimeOutInSecond", "100"));
httpClient.Timeout = new TimeSpan(0, 0, timeOut);
HttpResponseMessage resp = new HttpResponseMessage();
if (_methodType.ToLower().Equals("get"))
{
_log.Debug("Initiating the call");
resp = httpClient.GetAsync(_apiUrl).Result;
_log.Debug("Call finished");
}
string result = resp.Content.ReadAsStringAsync().Result;
_log.Debug(resp);
if (resp.IsSuccessStatusCode)
{
_tPResponse = ParseResponseMsg(result, _requestType);
return _tPResponse;
}
else
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = "Error sending request!";
return _tPResponse;
}
}
catch (HttpRequestException ex)
{
_tPResponse.ResponseCode = "999";
_tPResponse.Msg = ex.Message;
_tPResponse.Data = ex.Data;
}
};
return _tPResponse;
}
private TPResponse ParseResponseMsg(string result, string requestType)
{
TPResponse _tPResponse = new TPResponse() { ResponseCode = "1" };
long respCode = GetStatic.ParseLong(result);
if (requestType.ToLower() == "send")
{
if (respCode > 0)
{
_tPResponse.ResponseCode = "0";
_tPResponse.Msg = "SMS Sent Successfully!";
_tPResponse.Extra = result;
}
else if (respCode == -100)
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = "API Password or Username invalid!";
_tPResponse.Extra = result;
}
else if (respCode == -200)
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = "Sendr id is invalid!";
_tPResponse.Extra = result;
}
else if (respCode == -300)
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = "Mobile number is invalid!";
_tPResponse.Extra = result;
}
else if (respCode == -400)
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = "Language type is invalid!";
_tPResponse.Extra = result;
}
}
else if (requestType.ToLower() == "status")
{
if (respCode == 0)
{
_tPResponse.ResponseCode = "0";
_tPResponse.Msg = "Success receive on mobile handset!";
_tPResponse.Extra = result;
}
else if (respCode == 100)
{
_tPResponse.ResponseCode = "0";
_tPResponse.Msg = "Message delivered to Telco!";
_tPResponse.Extra = result;
}
else if (respCode == -100)
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = "mtid invalid/not found! Response Code: " + respCode.ToString();
_tPResponse.Extra = result;
}
else if (respCode == -200)
{
_tPResponse.ResponseCode = "1";
_tPResponse.Msg = "Message sending fail! Response Code: " + respCode.ToString();
_tPResponse.Extra = result;
}
}
return _tPResponse;
}
}
}

96
Business/BusinessLogic/Signature/ApiHelper.cs

@ -0,0 +1,96 @@
using Common.Models;
using Common.Models.RequestResponse;
using Common.Utility;
using log4net;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
namespace Business.BusinessLogic.Signature
{
public class ApiHelper
{
private static int timeOut = 100;
private string tp_base_url = GetStatic.ReadWebConfig("signature_Base_Url", "");
private readonly ILog _log = LogManager.GetLogger(typeof(ApiHelper));
public ResponseModel ThirdPartyApi<RequestModel, ResponseModel>(RequestModel model, string method, out TPResponse jsonResponse, string MethodType = "post")
{
ResponseModel _responseModel = default(ResponseModel);
using (HttpClient httpClient = new HttpClient())
{
try
{
httpClient.BaseAddress = new Uri(tp_base_url);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
httpClient.Timeout = new TimeSpan(0, 0, timeOut);
HttpResponseMessage resp = new HttpResponseMessage();
if (MethodType.ToLower().Equals("get"))
resp = httpClient.GetAsync(method).Result;
if (MethodType.ToLower().Equals("put"))
{
StringContent jbdContent = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json");
resp = httpClient.PutAsync(method, jbdContent).Result;
}
if (MethodType.ToLower().Equals("post"))
{
StringContent jbdContent = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json");
resp = httpClient.PostAsync(method, jbdContent).Result;
}
string resultData = resp.Content.ReadAsStringAsync().Result;
if (resp.IsSuccessStatusCode)
{
var result = resp.Content.ReadAsStringAsync().Result;
JObject a = JObject.Parse(result);
_responseModel = a.ToObject<ResponseModel>();
}
else
{
_log.Debug("ThirdPartyApi | RESPONSE: " + resp.ToString());
jsonResponse = new TPResponse()
{
Id = resp.StatusCode.ToString(),
Msg = resp.Content.ToString(),
Data = resp
};
}
}
catch (HttpRequestException ex)
{
jsonResponse = new TPResponse()
{
ResponseCode = "999",
Msg = ex.ToString(),
Data = ex.Data,
};
_responseModel = default(ResponseModel);
}
catch (Exception ex)
{
jsonResponse = new TPResponse()
{
ResponseCode = "999",
Msg = ex.ToString(),
Data = ex.Data,
};
_responseModel = default(ResponseModel);
}
};
jsonResponse = new TPResponse()
{
ResponseCode = "0",
Msg = "Api Calling process successfully!"
};
return _responseModel;
}
}
}

21
Business/BusinessLogic/TPApiServices/Donga/DongaServices.cs

@ -0,0 +1,21 @@
using Common.Models.RequestResponse;
using Common.TPService;
using Donga.DongaAPIService;
namespace Business.BusinessLogic.TPApiServices.Donga
{
public class DongaServices : ITPApiServices
{
private readonly IDongaAPI _dongaAPI;
public DongaServices(IDongaAPI dongaAPI)
{
_dongaAPI = dongaAPI;
}
public TPResponse GetTPResponse<T>(T model, string MethodName) where T : class
{
return _dongaAPI.GetTPResponse(model, MethodName);
}
}
}

64
Business/BusinessLogic/TPApiServices/Factory/ApiFactoryServices.cs

@ -0,0 +1,64 @@
using BankOfCeylon.BankOfCeylonAPIService;
using BracBank.BracBankApiService;
using Cebuana.ApiService;
using Common.TPService;
using Common.Utility;
using Donga.DongaAPIService;
using GMENepal.GMENepalAPIService;
using log4net;
using Transfast.ApiServices;
using Unity;
using Wing.ApiServices;
namespace Business.BusinessLogic.TPApiServices.Factory
{
public class ApiFactoryServices : IApiFactoryServices
{
private readonly ILog log = LogManager.GetLogger(typeof(ApiFactoryServices));
private readonly UnityContainer _container = new UnityContainer();
private ITPApiServices apiFactory;
public ITPApiServices GetServices(string providerNo)
{
if (providerNo == GetStatic.ReadWebConfig("donga", ""))
{
log.Debug("Choose Provider as DongaAPI");
//apiFactory = _container.Resolve<DongaAPI>();
apiFactory = _container.Resolve<DongApiV2>();
}
else if (providerNo == GetStatic.ReadWebConfig("transfast", ""))
{
log.Debug("Choose Provider as TFAPI");
apiFactory = _container.Resolve<TFAPI>();
}
else if (providerNo == GetStatic.ReadWebConfig("gmenepal", ""))
{
log.Debug("Choose Provider as GMENepalAPI");
apiFactory = _container.Resolve<GMENepalAPI>();
}
else if (providerNo == GetStatic.ReadWebConfig("bankofceylon", ""))
{
log.Debug("Choose Provider as bankofceylon");
apiFactory = _container.Resolve<BankOfCeylonAPI>();
}
else if (providerNo == GetStatic.ReadWebConfig("Bracbank", ""))
{
log.Debug("Choose Provider as Brac Bank");
apiFactory = _container.Resolve<BracBankAPI>();
}
else if (providerNo == GetStatic.ReadWebConfig("Cebuana", ""))
{
log.Debug("Choose Provider as Cebuana ");
apiFactory = _container.Resolve<CebuanaApi>();
}
else if (providerNo == GetStatic.ReadWebConfig("Wing", ""))
{
log.Debug("Choose Provider as Wings ");
apiFactory = _container.Resolve<WingApi>();
}
return apiFactory;
}
}
}

9
Business/BusinessLogic/TPApiServices/Factory/IApiFactoryServices.cs

@ -0,0 +1,9 @@
using Common.TPService;
namespace Business.BusinessLogic.TPApiServices.Factory
{
public interface IApiFactoryServices
{
ITPApiServices GetServices(string ProviderId);
}
}

23
Business/BusinessLogic/TPApiServices/JMENepal/JMENepalServices.cs

@ -0,0 +1,23 @@
using Common.Models.RequestResponse;
using Common.TPService;
using JMENepal.JMENepalAPIService;
using log4net;
namespace Business.BusinessLogic.TPApiServices.JMENepal
{
public class JMENepalServices : ITPApiServices
{
private readonly ILog _log = LogManager.GetLogger(typeof(JMENepalServices));
private readonly IJMENepalAPI _jMENepalAPI;
public JMENepalServices(IJMENepalAPI jMENepalAPI)
{
_jMENepalAPI = jMENepalAPI;
}
public TPResponse GetTPResponse<T>(T model, string MethodName) where T : class
{
return _jMENepalAPI.GetTPResponse(model, MethodName);
}
}
}

8
Business/BusinessLogic/TPApiServices/TPServices/IThirdPartyServices.cs

@ -0,0 +1,8 @@
using Common.TPService;
namespace Business.BusinessLogic.TPApiServices.TPServices
{
public interface IThirdPartyServices : ITPApiServices
{
}
}

347
Business/BusinessLogic/TPApiServices/TPServices/ThirdPartyServices.cs

@ -0,0 +1,347 @@
using Business.BusinessLogic.Address;
using Business.BusinessLogic.NotificationApiService;
using Business.BusinessLogic.SMSApiService;
using Business.BusinessLogic.TPApiServices.Factory;
using Common.Models.Address;
using Common.Models.Bank_Account;
using Common.Models.DigitalSignature;
using Common.Models.ExchangeRate;
using Common.Models.Notification;
using Common.Models.RequestResponse;
using Common.Models.SendSMS;
using Common.Models.SendTransactionMobile;
using Common.Models.Status;
using Common.Models.TxnModel;
using Common.TPService;
using Common.Utility;
using log4net;
using Newtonsoft.Json;
using Repository.DAO.ThirdParty;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
namespace Business.BusinessLogic.TPApiServices.TPServices
{
public class ThirdPartyServices : ITPApiServices
{
private readonly ILog _log = LogManager.GetLogger(typeof(ThirdPartyServices));
private readonly IThirdPartyRepo _thirdPartyRepo;
private readonly IApiFactoryServices _apiFactoryServices;
public ThirdPartyServices(IThirdPartyRepo thirdPartyRepo, IApiFactoryServices apiFactoryServices)
{
_thirdPartyRepo = thirdPartyRepo;
_apiFactoryServices = apiFactoryServices;
}
public TPResponse GetTPResponse<T>(T model, string MethodName) where T : class
{
switch (MethodName)
{
case "send":
return SendTransaction(model as SendTransaction, MethodName);
case "sendV2":
return SendTransactionMobileOrOnline(model as SendTransactionMobile, MethodName);
case "exRate":
return GetExRate(model as ExchangeRate, MethodName);
case "status":
return GetTxnStatus(model as GetStatus, MethodName);
case "SMSApi":
return SendMessage(model as SMSRequestModel, MethodName);
case "verify":
return VerifyAccount(model as AccountValidate, MethodName);
case "SendNotificationApi":
return SendNotification(model as SendNotificationRequest, MethodName);
case "JWTHelper":
return JWTHelper(model as JWTRequest, MethodName);
case "loqate":
return AddressLookup(model as AddressRequest);
default:
return _apiFactoryServices.GetServices(model.GetType().GetProperty("ProviderId").GetValue(model, null).ToString()).GetTPResponse(model, MethodName);
}
}
private TPResponse SendMessage(SMSRequestModel sMSRequestModel, string methodName)
{
ISMSService _sms = new SMSService();
return _sms.SMSApiMethod(sMSRequestModel);
}
private TPResponse GetTxnStatus(GetStatus gS, string MethodName)
{
TPResponse result = _apiFactoryServices.GetServices(gS.ProviderId).GetTPResponse(gS, MethodName);
return result;
}
private TPResponse GetExRate(ExchangeRate exModel, string MethodName)
{
TPResponse response = null;
_log.Debug("GetExRate Method is calling: ");
try
{
if (exModel.IsExRateCalcByPartner)
return _apiFactoryServices.GetServices(exModel.ProviderId).GetTPResponse(exModel, MethodName);
else if (exModel.RequestedBy.ToLower().Equals("core"))
return _thirdPartyRepo.GetExRateCore(exModel);
else if (exModel.RequestedBy.ToLower().Equals("online") || exModel.RequestedBy.ToLower().Equals("mobile"))
{
return CalculateExRate(exModel);
}
}
catch (Exception ex)
{
LogicalThreadContext.Properties["exception"] = ex;
_log.Error("Error Occured On GetExRate Method " + JsonConvert.SerializeObject(ex.Message));
response = new TPResponse() { Id = null, ResponseCode = "1", Msg = "Error Occured On GetExRate!", Data = null };
}
return response;
}
private TPResponse CalculateExRate(ExchangeRate exModel)
{
List<TPResponsev2> tPResponses = new List<TPResponsev2>();
DataTable dt = _thirdPartyRepo.GetAPIPartner(exModel);
foreach (DataRow dr in dt.Rows)
{
if (dr["isRealTime"].ToString().ToLower() == "true" | dr["isRealTime"].ToString().ToLower() == "1")
{
exModel.PaymentType = !string.IsNullOrEmpty(exModel.PaymentType) ? exModel.PaymentType : "";
exModel.ServiceType = !string.IsNullOrEmpty(exModel.ServiceType) ? exModel.ServiceType : "";
if (exModel.PCountry.Equals("151") && (exModel.PaymentType.Equals("wallet") | exModel.ServiceType.Equals("13")))
{
exModel.IsExRateCalcByPartner = false;
}
else if (exModel.PCountry.Equals("36"))
{
exModel.IsExRateCalcByPartner = false;
}
else
{
exModel.pCountryCode = dr["COUNTRYCODE"].ToString();
exModel.SCurrency = (string.IsNullOrEmpty(exModel.SCurrency) ? exModel.CollCurrency : exModel.SCurrency);
exModel.IsExRateCalcByPartner = true;
exModel.payerName = dr["PayerDetails"].ToString();
//exModel.PayoutPartner = dr["agentid"].ToString();
TPResponse _resp = _apiFactoryServices.GetServices(dr["agentId"].ToString()).GetTPResponse(exModel, "exRate");
ExRateResponse _exrate = (ExRateResponse)_resp.Data;
exModel.tPExRate = _exrate.exRate;
}
}
else
{
exModel.IsExRateCalcByPartner = false;
}
exModel.SCExcludedCountries = Common.Utility.GetStatic.ReadWebConfig("SCExcludedCountries", "");
var r = (TPResponse)_thirdPartyRepo.GetExRate(exModel);
if (r.ResponseCode != null && r.ResponseCode.Equals("0"))
{
tPResponses.Add(new TPResponsev2() { Data = (ExRateResponse)r.Data, Extra = r.Extra, Extra2 = r.Extra2, ResponseCode = r.ResponseCode });
}
else
tPResponses.Add(new TPResponsev2() { Data = null, ResponseCode = r.ResponseCode, Msg = r.Msg });
// tPResponses.Add(();
}
TPResponsev2 final;
if (tPResponses.Any(x => x.ResponseCode.Equals("0")))
{
final = tPResponses.Where(x => x.ResponseCode.Equals("0") && double.Parse(x.Data.exRate) == tPResponses.Max(y => double.Parse(y.Data.exRate))).FirstOrDefault();
}
else
{
final = tPResponses.FirstOrDefault();
}
return new TPResponse()
{ Data = final.Data, ResponseCode = final.ResponseCode, Msg = final.Msg };
}
private TPResponse SendTransactionMobileOrOnline(SendTransactionMobile model, string methodName)
{
try
{
TPResponse createResponse = _thirdPartyRepo.CreateTransactionFromMobileOROnline(model); /// create txn on jme system database
if (createResponse.ResponseCode == "0" && createResponse.Extra2.ToLower() == "true")
{
TPResponse detailResponse = new TPResponse() { };
SendTransaction txnDetailsFromDb = _thirdPartyRepo.GetTranactionDetails(model.RequestedBy, createResponse.Id, model.SessionId, out detailResponse);
if (detailResponse.ResponseCode == "0")
{
LogicalThreadContext.Properties["ControlNo"] = txnDetailsFromDb.Transaction.JMEControlNo;
TPResponse partnerResponse = SendTxnToPartner(txnDetailsFromDb, "send");
if (partnerResponse.ResponseCode == "0")
{
_thirdPartyRepo.UpdateTPTxns(partnerResponse.Extra, partnerResponse.Id, "", txnDetailsFromDb.Transaction.JMEControlNo, model.RequestedBy);
return createResponse;
}
else
{
LogicalThreadContext.Properties["ControlNo"] = txnDetailsFromDb.Transaction.JMEControlNo;
LogicalThreadContext.Properties["user_name"] = txnDetailsFromDb.TranId;
_log.Info("SendTxnToPartner response : " + JsonConvert.SerializeObject(partnerResponse));
_thirdPartyRepo.RevertTPTxns(txnDetailsFromDb.Transaction.JMEControlNo, model.RequestedBy);
return new TPResponse
{
ResponseCode = "1",
Msg = partnerResponse.Msg ?? "Unable to complete transaction, Partner Error - Contact Support team.",
Id = null
};
}
}
else
return detailResponse;
}
return createResponse;
}
catch (Exception ex)
{
LogicalThreadContext.Properties["exception"] = ex;
_log.Error("OnlineOrMobileSendTransaction | Exception occured: " + ex.ToString());
return new TPResponse() { Id = null, ResponseCode = "1", Msg = "Error Occured On SendTransactionMobileOrOnline !", Data = null };
}
}
private TPResponse SendTransaction(SendTransaction model, string MethodName)
{
TPResponse response = new TPResponse();
try
{
if (!model.isTxnAlreadyCreated)
{
response = _thirdPartyRepo.SendTransaction(model);
//if (response.ResponseCode == "0")
//{
// model = _thirdPartyRepo.GetTxnDetailsByTempTranId(response.Id, out response);
//}
}
else
{
response.ResponseCode = "0";
response.Extra = Convert.ToString(model.TranId);
response.Id = model.Transaction.JMEControlNo;
}
if (response.ResponseCode == "0")
{
model.TranId = Convert.ToInt32(response.Extra);
model.Transaction.JMEControlNo = response.Id;
if (model.IsRealtime)
{
response = SendTxnToPartner(model, MethodName);
}
}
else
{
_log.DebugFormat("Error creating transaction in JME system with Response : " + JsonConvert.SerializeObject(response));
}
}
catch (Exception ex)
{
LogicalThreadContext.Properties["exception"] = ex;
_log.Error("Error Occured On TransactionSend Method " + JsonConvert.SerializeObject(ex.Message));
response = new TPResponse() { Id = null, ResponseCode = "1", Msg = "Error Occured On Transaction Send!", Data = null };
}
return response;
}
private TPResponse SendTxnToPartner(SendTransaction model, string MethodName)
{
TPResponse response = _apiFactoryServices.GetServices(model.ProviderId).GetTPResponse(model, MethodName);
if (response.ResponseCode == "0")
{
model.Transaction.TpRefNo = response.Extra;
model.Transaction.TpTranId = response.Id;
_log.Info("Transaction send to API Partner Success with Response : " + JsonConvert.SerializeObject(response));
return response;
//if (model.IsApproveTxn)
//{
// TPResponse txnApproveResponse = _thirdPartyRepo.ApproveTransaction(model);
// if (txnApproveResponse.ResponseCode == "0")
// {
// _log.Info("Transaction Approve Response : " + JsonConvert.SerializeObject(txnApproveResponse));
// return response;
// }
// else
// {
// _log.Error("Transaction Approve Response : " + JsonConvert.SerializeObject(txnApproveResponse));
// return txnApproveResponse;
// }
//}
//else
//{
// return response;
//}
}
else if (response.ResponseCode == "1")
{
_log.Info("Transaction send to API Partner Failed with Response : " + JsonConvert.SerializeObject(response));
return response;
//if (!string.IsNullOrEmpty(model.RequestedBy) && !string.IsNullOrWhiteSpace(model.RequestedBy) && model.RequestedBy.ToLower().Equals("mobile"))
//{
// TPResponse txnRejectResponse = _thirdPartyRepo.RejectTransaction(model);
// _log.Info("Transaction Reject Response : " + JsonConvert.SerializeObject(txnRejectResponse));
// return response;
//}
//else
//{
// return response;
//}
}
else if (response.ResponseCode == "104")
{
_log.Info("Model Validation Failed : " + JsonConvert.SerializeObject(response));
return response;
}
return response;
}
private TPResponse VerifyAccount(AccountValidate av, string methodName)
{
TPResponse result = _apiFactoryServices.GetServices(av.ProviderId).GetTPResponse(av, methodName);
return result;
}
private TPResponse SendNotification(SendNotificationRequest requestModel, string methodName)
{
INotificationService notificationService = new NotificationService();
return notificationService.NotificationApiMethod(requestModel);
}
private TPResponse AddressLookup(AddressRequest requestModel)
{
ILocateBusiness service = new LocateBusiness();
return service.QueryAddress(requestModel.TownName);
}
private TPResponse JWTHelper(JWTRequest requestModel, string methodName)
{
TPResponse result = new TPResponse();
//TokenRequest tokenRequest = new TokenRequest() { Payload = requestModel.RequestString };
ApiHelper api = new ApiHelper();
if (requestModel.Type == Common.Models.Enums.JWTType.ENCRYPT)
result = api.ThirdPartyApi<JWTRequest, TPResponse>(requestModel, "brac/GetToken", out result);
else
result = api.ThirdPartyApi<JWTRequest, TPResponse>(requestModel, "brac/GetToken", out result);
return result;
}
}
}

21
Business/BusinessLogic/TPApiServices/Transfast/TransfastServices.cs

@ -0,0 +1,21 @@
using Common.Models.RequestResponse;
using Common.TPService;
using Transfast.ApiServices;
namespace Business.BusinessLogic.TPApiServices.Transfast
{
public class TransfastServices : ITPApiServices
{
private readonly ITFAPI _tFAPI;
public TransfastServices(ITFAPI tFAPI)
{
_tFAPI = tFAPI;
}
public TPResponse GetTPResponse<T>(T model, string MethodName) where T : class
{
return _tFAPI.GetTPResponse(model, MethodName);
}
}
}

10
Business/Connected Services/LoqateApi/Business.LoqateApi.Capture_Interactive_Find_v1_10Response.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="Capture_Interactive_Find_v1_10Response" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Business.LoqateApi.Capture_Interactive_Find_v1_10Response, Connected Services.LoqateApi.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

10
Business/Connected Services/LoqateApi/Business.LoqateApi.Capture_Interactive_Find_v1_10_ArrayOfResults.datasource

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="Capture_Interactive_Find_v1_10_ArrayOfResults" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>Business.LoqateApi.Capture_Interactive_Find_v1_10_ArrayOfResults, Connected Services.LoqateApi.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

288
Business/Connected Services/LoqateApi/Reference.cs

@ -0,0 +1,288 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Business.LoqateApi {
using System.Runtime.Serialization;
using System;
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
[System.Runtime.Serialization.CollectionDataContractAttribute(Name="Capture_Interactive_Find_v1_10_ArrayOfResults", Namespace="http://services.postcodeanywhere.co.uk/", ItemName="Capture_Interactive_Find_v1_10_Results")]
[System.SerializableAttribute()]
public class Capture_Interactive_Find_v1_10_ArrayOfResults : System.Collections.Generic.List<Business.LoqateApi.Capture_Interactive_Find_v1_10_Results> {
}
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
[System.Runtime.Serialization.DataContractAttribute(Name="Capture_Interactive_Find_v1_10_Results", Namespace="http://services.postcodeanywhere.co.uk/")]
[System.SerializableAttribute()]
public partial class Capture_Interactive_Find_v1_10_Results : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
[System.NonSerializedAttribute()]
private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
private string IdField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
private string TypeField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
private string TextField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
private string HighlightField;
[System.Runtime.Serialization.OptionalFieldAttribute()]
private string DescriptionField;
[global::System.ComponentModel.BrowsableAttribute(false)]
public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
get {
return this.extensionDataField;
}
set {
this.extensionDataField = value;
}
}
[System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
public string Id {
get {
return this.IdField;
}
set {
if ((object.ReferenceEquals(this.IdField, value) != true)) {
this.IdField = value;
this.RaisePropertyChanged("Id");
}
}
}
[System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
public string Type {
get {
return this.TypeField;
}
set {
if ((object.ReferenceEquals(this.TypeField, value) != true)) {
this.TypeField = value;
this.RaisePropertyChanged("Type");
}
}
}
[System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false, Order=2)]
public string Text {
get {
return this.TextField;
}
set {
if ((object.ReferenceEquals(this.TextField, value) != true)) {
this.TextField = value;
this.RaisePropertyChanged("Text");
}
}
}
[System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false, Order=3)]
public string Highlight {
get {
return this.HighlightField;
}
set {
if ((object.ReferenceEquals(this.HighlightField, value) != true)) {
this.HighlightField = value;
this.RaisePropertyChanged("Highlight");
}
}
}
[System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false, Order=4)]
public string Description {
get {
return this.DescriptionField;
}
set {
if ((object.ReferenceEquals(this.DescriptionField, value) != true)) {
this.DescriptionField = value;
this.RaisePropertyChanged("Description");
}
}
}
public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
protected void RaisePropertyChanged(string propertyName) {
System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
if ((propertyChanged != null)) {
propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
}
}
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ServiceModel.ServiceContractAttribute(Namespace="http://services.postcodeanywhere.co.uk/", ConfigurationName="LoqateApi.PostcodeAnywhere_Soap")]
public interface PostcodeAnywhere_Soap {
// CODEGEN: Generating message contract since the wrapper name (Capture_Interactive_Find_v1_10_Response) of message Capture_Interactive_Find_v1_10Response does not match the default value (Capture_Interactive_Find_v1_10)
[System.ServiceModel.OperationContractAttribute(Action="http://services.postcodeanywhere.co.uk/Capture_Interactive_Find_v1_10", ReplyAction="*")]
Business.LoqateApi.Capture_Interactive_Find_v1_10Response Capture_Interactive_Find_v1_10(Business.LoqateApi.Capture_Interactive_Find_v1_10Request request);
[System.ServiceModel.OperationContractAttribute(Action="http://services.postcodeanywhere.co.uk/Capture_Interactive_Find_v1_10", ReplyAction="*")]
System.Threading.Tasks.Task<Business.LoqateApi.Capture_Interactive_Find_v1_10Response> Capture_Interactive_Find_v1_10Async(Business.LoqateApi.Capture_Interactive_Find_v1_10Request request);
}
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
[System.ServiceModel.MessageContractAttribute(WrapperName="Capture_Interactive_Find_v1_10", WrapperNamespace="http://services.postcodeanywhere.co.uk/", IsWrapped=true)]
public partial class Capture_Interactive_Find_v1_10Request {
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=0)]
public string Key;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=1)]
public string Text;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=2)]
public bool IsMiddleware;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=3)]
public string Container;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=4)]
public string Origin;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=5)]
public string Countries;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=6)]
public int Limit;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=7)]
public string Language;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=8)]
public bool Bias;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=9)]
public string Filters;
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=10)]
public string GeoFence;
public Capture_Interactive_Find_v1_10Request() {
}
public Capture_Interactive_Find_v1_10Request(string Key, string Text, bool IsMiddleware, string Container, string Origin, string Countries, int Limit, string Language, bool Bias, string Filters, string GeoFence) {
this.Key = Key;
this.Text = Text;
this.IsMiddleware = IsMiddleware;
this.Container = Container;
this.Origin = Origin;
this.Countries = Countries;
this.Limit = Limit;
this.Language = Language;
this.Bias = Bias;
this.Filters = Filters;
this.GeoFence = GeoFence;
}
}
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
[System.ServiceModel.MessageContractAttribute(WrapperName="Capture_Interactive_Find_v1_10_Response", WrapperNamespace="http://services.postcodeanywhere.co.uk/", IsWrapped=true)]
public partial class Capture_Interactive_Find_v1_10Response {
[System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://services.postcodeanywhere.co.uk/", Order=0)]
public Business.LoqateApi.Capture_Interactive_Find_v1_10_ArrayOfResults Capture_Interactive_Find_v1_10_Result;
public Capture_Interactive_Find_v1_10Response() {
}
public Capture_Interactive_Find_v1_10Response(Business.LoqateApi.Capture_Interactive_Find_v1_10_ArrayOfResults Capture_Interactive_Find_v1_10_Result) {
this.Capture_Interactive_Find_v1_10_Result = Capture_Interactive_Find_v1_10_Result;
}
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
public interface PostcodeAnywhere_SoapChannel : Business.LoqateApi.PostcodeAnywhere_Soap, System.ServiceModel.IClientChannel {
}
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
public partial class PostcodeAnywhere_SoapClient : System.ServiceModel.ClientBase<Business.LoqateApi.PostcodeAnywhere_Soap>, Business.LoqateApi.PostcodeAnywhere_Soap {
public PostcodeAnywhere_SoapClient() {
}
public PostcodeAnywhere_SoapClient(string endpointConfigurationName) :
base(endpointConfigurationName) {
}
public PostcodeAnywhere_SoapClient(string endpointConfigurationName, string remoteAddress) :
base(endpointConfigurationName, remoteAddress) {
}
public PostcodeAnywhere_SoapClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
base(endpointConfigurationName, remoteAddress) {
}
public PostcodeAnywhere_SoapClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
base(binding, remoteAddress) {
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
Business.LoqateApi.Capture_Interactive_Find_v1_10Response Business.LoqateApi.PostcodeAnywhere_Soap.Capture_Interactive_Find_v1_10(Business.LoqateApi.Capture_Interactive_Find_v1_10Request request) {
return base.Channel.Capture_Interactive_Find_v1_10(request);
}
public Business.LoqateApi.Capture_Interactive_Find_v1_10_ArrayOfResults Capture_Interactive_Find_v1_10(string Key, string Text, bool IsMiddleware, string Container, string Origin, string Countries, int Limit, string Language, bool Bias, string Filters, string GeoFence) {
Business.LoqateApi.Capture_Interactive_Find_v1_10Request inValue = new Business.LoqateApi.Capture_Interactive_Find_v1_10Request();
inValue.Key = Key;
inValue.Text = Text;
inValue.IsMiddleware = IsMiddleware;
inValue.Container = Container;
inValue.Origin = Origin;
inValue.Countries = Countries;
inValue.Limit = Limit;
inValue.Language = Language;
inValue.Bias = Bias;
inValue.Filters = Filters;
inValue.GeoFence = GeoFence;
Business.LoqateApi.Capture_Interactive_Find_v1_10Response retVal = ((Business.LoqateApi.PostcodeAnywhere_Soap)(this)).Capture_Interactive_Find_v1_10(inValue);
return retVal.Capture_Interactive_Find_v1_10_Result;
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
System.Threading.Tasks.Task<Business.LoqateApi.Capture_Interactive_Find_v1_10Response> Business.LoqateApi.PostcodeAnywhere_Soap.Capture_Interactive_Find_v1_10Async(Business.LoqateApi.Capture_Interactive_Find_v1_10Request request) {
return base.Channel.Capture_Interactive_Find_v1_10Async(request);
}
public System.Threading.Tasks.Task<Business.LoqateApi.Capture_Interactive_Find_v1_10Response> Capture_Interactive_Find_v1_10Async(string Key, string Text, bool IsMiddleware, string Container, string Origin, string Countries, int Limit, string Language, bool Bias, string Filters, string GeoFence) {
Business.LoqateApi.Capture_Interactive_Find_v1_10Request inValue = new Business.LoqateApi.Capture_Interactive_Find_v1_10Request();
inValue.Key = Key;
inValue.Text = Text;
inValue.IsMiddleware = IsMiddleware;
inValue.Container = Container;
inValue.Origin = Origin;
inValue.Countries = Countries;
inValue.Limit = Limit;
inValue.Language = Language;
inValue.Bias = Bias;
inValue.Filters = Filters;
inValue.GeoFence = GeoFence;
return ((Business.LoqateApi.PostcodeAnywhere_Soap)(this)).Capture_Interactive_Find_v1_10Async(inValue);
}
}
}

31
Business/Connected Services/LoqateApi/Reference.svcmap

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<ReferenceGroup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ID="953a1695-729e-4200-a113-61a429b43462" xmlns="urn:schemas-microsoft-com:xml-wcfservicemap">
<ClientOptions>
<GenerateAsynchronousMethods>false</GenerateAsynchronousMethods>
<GenerateTaskBasedAsynchronousMethod>true</GenerateTaskBasedAsynchronousMethod>
<EnableDataBinding>true</EnableDataBinding>
<ExcludedTypes />
<ImportXmlTypes>false</ImportXmlTypes>
<GenerateInternalTypes>false</GenerateInternalTypes>
<GenerateMessageContracts>false</GenerateMessageContracts>
<NamespaceMappings />
<CollectionMappings />
<GenerateSerializableTypes>true</GenerateSerializableTypes>
<Serializer>Auto</Serializer>
<UseSerializerForFaults>true</UseSerializerForFaults>
<ReferenceAllAssemblies>true</ReferenceAllAssemblies>
<ReferencedAssemblies />
<ReferencedDataContractTypes />
<ServiceContractMappings />
</ClientOptions>
<MetadataSources>
<MetadataSource Address="https://api.addressy.com/Capture/Interactive/Find/v1.1/wsdlnew.ws" Protocol="http" SourceId="1" />
</MetadataSources>
<Metadata>
<MetadataFile FileName="wsdlnew.wsdl" MetadataType="Wsdl" ID="49c88f74-1c2f-42df-a6b0-2818f50b8fd3" SourceId="1" SourceUrl="https://api.addressy.com/Capture/Interactive/Find/v1.1/wsdlnew.ws" />
</Metadata>
<Extensions>
<ExtensionFile FileName="configuration91.svcinfo" Name="configuration91.svcinfo" />
<ExtensionFile FileName="configuration.svcinfo" Name="configuration.svcinfo" />
</Extensions>
</ReferenceGroup>

10
Business/Connected Services/LoqateApi/configuration.svcinfo

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<configurationSnapshot xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:schemas-microsoft-com:xml-wcfconfigurationsnapshot">
<behaviors />
<bindings>
<binding digest="System.ServiceModel.Configuration.BasicHttpBindingElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089:&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data name=&quot;PostcodeAnywhere_Soap&quot; /&gt;" bindingType="basicHttpBinding" name="PostcodeAnywhere_Soap" />
</bindings>
<endpoints>
<endpoint normalizedDigest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;http://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws&quot; binding=&quot;basicHttpBinding&quot; bindingConfiguration=&quot;PostcodeAnywhere_Soap&quot; contract=&quot;LoqateApi.PostcodeAnywhere_Soap&quot; name=&quot;PostcodeAnywhere_Soap&quot; /&gt;" digest="&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&lt;Data address=&quot;http://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws&quot; binding=&quot;basicHttpBinding&quot; bindingConfiguration=&quot;PostcodeAnywhere_Soap&quot; contract=&quot;LoqateApi.PostcodeAnywhere_Soap&quot; name=&quot;PostcodeAnywhere_Soap&quot; /&gt;" contractName="LoqateApi.PostcodeAnywhere_Soap" name="PostcodeAnywhere_Soap" />
</endpoints>
</configurationSnapshot>

201
Business/Connected Services/LoqateApi/configuration91.svcinfo

@ -0,0 +1,201 @@
<?xml version="1.0" encoding="utf-8"?>
<SavedWcfConfigurationInformation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="9.1" CheckSum="Np92oHfQ0UDgttrk6F4tWM7PVUSt/Ndg7iIFYYq2DDg=">
<bindingConfigurations>
<bindingConfiguration bindingType="basicHttpBinding" name="PostcodeAnywhere_Soap">
<properties>
<property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>PostcodeAnywhere_Soap</serializedValue>
</property>
<property path="/closeTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/openTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/receiveTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/sendTimeout" isComplexType="false" isExplicitlyDefined="true" clrType="System.TimeSpan, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/allowCookies" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/bypassProxyOnLocal" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/hostNameComparisonMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HostNameComparisonMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>StrongWildcard</serializedValue>
</property>
<property path="/maxBufferPoolSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/maxBufferSize" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>65536</serializedValue>
</property>
<property path="/maxReceivedMessageSize" isComplexType="false" isExplicitlyDefined="true" clrType="System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/proxyAddress" isComplexType="false" isExplicitlyDefined="false" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/readerQuotas" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement</serializedValue>
</property>
<property path="/readerQuotas/maxDepth" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxStringContentLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxArrayLength" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxBytesPerRead" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/readerQuotas/maxNameTableCharCount" isComplexType="false" isExplicitlyDefined="false" clrType="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>0</serializedValue>
</property>
<property path="/textEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.Text.Encoding, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Text.UTF8Encoding</serializedValue>
</property>
<property path="/transferMode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.TransferMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Buffered</serializedValue>
</property>
<property path="/useDefaultWebProxy" isComplexType="false" isExplicitlyDefined="true" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/messageEncoding" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.WSMessageEncoding, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Text</serializedValue>
</property>
<property path="/security" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.BasicHttpSecurityElement</serializedValue>
</property>
<property path="/security/mode" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.BasicHttpSecurityMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.HttpTransportSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.HttpTransportSecurityElement</serializedValue>
</property>
<property path="/security/transport/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpClientCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport/proxyCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.HttpProxyCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>None</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.Security.Authentication.ExtendedProtection.Configuration.ExtendedProtectionPolicyElement</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/policyEnforcement" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.PolicyEnforcement, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Never</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/protectionScenario" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.ProtectionScenario, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>TransportSelected</serializedValue>
</property>
<property path="/security/transport/extendedProtectionPolicy/customServiceNames" isComplexType="true" isExplicitlyDefined="false" clrType="System.Security.Authentication.ExtendedProtection.Configuration.ServiceNameElementCollection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>(Collection)</serializedValue>
</property>
<property path="/security/transport/realm" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/security/message" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.BasicHttpMessageSecurityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.BasicHttpMessageSecurityElement</serializedValue>
</property>
<property path="/security/message/clientCredentialType" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.BasicHttpMessageCredentialType, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>UserName</serializedValue>
</property>
<property path="/security/message/algorithmSuite" isComplexType="false" isExplicitlyDefined="false" clrType="System.ServiceModel.Security.SecurityAlgorithmSuite, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>Default</serializedValue>
</property>
</properties>
</bindingConfiguration>
</bindingConfigurations>
<endpoints>
<endpoint name="PostcodeAnywhere_Soap" contract="LoqateApi.PostcodeAnywhere_Soap" bindingType="basicHttpBinding" address="http://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws" bindingConfiguration="PostcodeAnywhere_Soap">
<properties>
<property path="/address" isComplexType="false" isExplicitlyDefined="true" clrType="System.Uri, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>http://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws</serializedValue>
</property>
<property path="/behaviorConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/binding" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>basicHttpBinding</serializedValue>
</property>
<property path="/bindingConfiguration" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>PostcodeAnywhere_Soap</serializedValue>
</property>
<property path="/contract" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LoqateApi.PostcodeAnywhere_Soap</serializedValue>
</property>
<property path="/headers" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.AddressHeaderCollectionElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.AddressHeaderCollectionElement</serializedValue>
</property>
<property path="/headers/headers" isComplexType="false" isExplicitlyDefined="true" clrType="System.ServiceModel.Channels.AddressHeaderCollection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>&lt;Header /&gt;</serializedValue>
</property>
<property path="/identity" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.IdentityElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.IdentityElement</serializedValue>
</property>
<property path="/identity/userPrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.UserPrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.UserPrincipalNameElement</serializedValue>
</property>
<property path="/identity/userPrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/servicePrincipalName" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.ServicePrincipalNameElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.ServicePrincipalNameElement</serializedValue>
</property>
<property path="/identity/servicePrincipalName/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/dns" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.DnsElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.DnsElement</serializedValue>
</property>
<property path="/identity/dns/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/rsa" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.RsaElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.RsaElement</serializedValue>
</property>
<property path="/identity/rsa/value" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificate" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateElement</serializedValue>
</property>
<property path="/identity/certificate/encodedValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificateReference" isComplexType="true" isExplicitlyDefined="false" clrType="System.ServiceModel.Configuration.CertificateReferenceElement, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>System.ServiceModel.Configuration.CertificateReferenceElement</serializedValue>
</property>
<property path="/identity/certificateReference/storeName" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreName, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>My</serializedValue>
</property>
<property path="/identity/certificateReference/storeLocation" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.StoreLocation, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>LocalMachine</serializedValue>
</property>
<property path="/identity/certificateReference/x509FindType" isComplexType="false" isExplicitlyDefined="false" clrType="System.Security.Cryptography.X509Certificates.X509FindType, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>FindBySubjectDistinguishedName</serializedValue>
</property>
<property path="/identity/certificateReference/findValue" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/identity/certificateReference/isChainIncluded" isComplexType="false" isExplicitlyDefined="false" clrType="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>False</serializedValue>
</property>
<property path="/name" isComplexType="false" isExplicitlyDefined="true" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue>PostcodeAnywhere_Soap</serializedValue>
</property>
<property path="/kind" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
<property path="/endpointConfiguration" isComplexType="false" isExplicitlyDefined="false" clrType="System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<serializedValue />
</property>
</properties>
</endpoint>
</endpoints>
</SavedWcfConfigurationInformation>

74
Business/Connected Services/LoqateApi/wsdlnew.wsdl

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://services.postcodeanywhere.co.uk/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://services.postcodeanywhere.co.uk/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://services.postcodeanywhere.co.uk/">
<s:element name="Capture_Interactive_Find_v1_10">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Key" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Text" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="IsMiddleware" type="s:boolean" />
<s:element minOccurs="0" maxOccurs="1" name="Container" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Origin" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Countries" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Limit" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="Language" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="Bias" type="s:boolean" />
<s:element minOccurs="0" maxOccurs="1" name="Filters" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="GeoFence" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="Capture_Interactive_Find_v1_10_Response">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Capture_Interactive_Find_v1_10_Result" type="tns:Capture_Interactive_Find_v1_10_ArrayOfResults" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="Capture_Interactive_Find_v1_10_ArrayOfResults">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="Capture_Interactive_Find_v1_10_Results" type="tns:Capture_Interactive_Find_v1_10_Results" />
</s:sequence>
</s:complexType>
<s:complexType name="Capture_Interactive_Find_v1_10_Results">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Id" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Type" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Text" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Highlight" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
</s:sequence>
</s:complexType>
</s:schema>
</wsdl:types>
<wsdl:message name="Capture_Interactive_Find_v1_10_SoapIn">
<wsdl:part name="parameters" element="tns:Capture_Interactive_Find_v1_10" />
</wsdl:message>
<wsdl:message name="Capture_Interactive_Find_v1_10_SoapOut">
<wsdl:part name="parameters" element="tns:Capture_Interactive_Find_v1_10_Response" />
</wsdl:message>
<wsdl:portType name="PostcodeAnywhere_Soap">
<wsdl:operation name="Capture_Interactive_Find_v1_10">
<wsdl:input message="tns:Capture_Interactive_Find_v1_10_SoapIn" />
<wsdl:output message="tns:Capture_Interactive_Find_v1_10_SoapOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="PostcodeAnywhere_Soap" type="tns:PostcodeAnywhere_Soap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="Capture_Interactive_Find_v1_10">
<soap:operation soapAction="http://services.postcodeanywhere.co.uk/Capture_Interactive_Find_v1_10" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="PostcodeAnywhere">
<wsdl:port name="PostcodeAnywhere_Soap" binding="tns:PostcodeAnywhere_Soap">
<soap:address location="http://services.postcodeanywhere.co.uk/Capture/Interactive/Find/v1.10/soapnew.ws" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

75
Business/DIConfig/UnityConfig.cs

@ -0,0 +1,75 @@
using BankOfCeylon.BankOfCeylonAPIService;
using BracBank.BracBankApiService;
using Business.BusinessLogic.Auth;
using Business.BusinessLogic.TPApiServices.Factory;
using Business.BusinessLogic.TPApiServices.TPServices;
using Business.TokenManagement;
using Common.TPService;
using Donga.DongaAPIService;
using GMENepal.GMENepalAPIService;
using Repository.DAO.ThirdParty;
using System.Web.Http;
using Transfast.ApiServices;
using Unity;
using Unity.WebApi;
namespace Business.DIConfig
{
public static class UnityConfig
{
public static void RegisterComponents()
{
var container = new UnityContainer();
// e.g. container.RegisterType<ITestService, TestService>();
//////
#region Config for business Layer
container.RegisterType<IAuthServices, AuthServices>();
container.RegisterType<ITokenManagementServices, TokenManagementServices>();
container.RegisterType<ITPApiServices, ThirdPartyServices>();
container.RegisterType<IApiFactoryServices, ApiFactoryServices>();
#endregion Config for business Layer
#region Config for Repo Layer
container.RegisterType<IThirdPartyRepo, ThirdPartyRepo>();
#endregion Config for Repo Layer
#region IDongaAPI
container.RegisterType<ITPApiServices, DongApiV2>();
#endregion IDongaAPI
#region TRANSFAST
container.RegisterType<ITPApiServices, TFAPI>();
#endregion TRANSFAST
#region GMENEPAL
container.RegisterType<ITPApiServices, GMENepalAPI>();
#endregion GMENEPAL
#region Bank Of Ceylon
container.RegisterType<ITPApiServices, BankOfCeylonAPI>();
#endregion Bank Of Ceylon
#region BRAC
container.RegisterType<ITPApiServices, BracBankAPI>();
#endregion BRAC
////////
GlobalConfiguration.Configuration.DependencyResolver = new UnityDependencyResolver(container);
}
}
}

29
Business/Properties/AssemblyInfo.cs

@ -0,0 +1,29 @@
using System.Reflection;
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("Business")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Business")]
[assembly: AssemblyCopyright("Copyright © 2019")]
[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("143e1f73-bd44-4c9e-99d0-0768bf302285")]
// 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")]

11
Business/TokenManagement/ITokenManagementServices.cs

@ -0,0 +1,11 @@
using Common.Models;
namespace Business.TokenManagement
{
public interface ITokenManagementServices
{
void CreateTokenNo(TokenManageModel userModel, out string tokenNo);
bool CheckTokenNo(string tokenNo, ref string msg);
}
}

91
Business/TokenManagement/TokenManagementServices.cs

@ -0,0 +1,91 @@
using Business.BusinessLogic.Auth;
using Common.Models;
using log4net;
using Microsoft.IdentityModel.Tokens;
using System;
using System.IdentityModel.Tokens.Jwt;
using System.Linq;
using System.Security.Claims;
using System.Text;
using System.Threading;
namespace Business.TokenManagement
{
public class TokenManagementServices : ITokenManagementServices
{
private readonly IAuthServices _authServices;
private readonly ILog _log = LogManager.GetLogger(typeof(TokenManagementServices));
public TokenManagementServices(IAuthServices authServices)
{
_authServices = authServices;
}
public bool CheckTokenNo(string tokenNo, ref string msg)
{
try
{
TokenManageModel newTokenModel = new TokenManageModel();
JwtSecurityTokenHandler handler = new JwtSecurityTokenHandler();
var readToken = handler.ReadToken(tokenNo) as JwtSecurityToken;
newTokenModel = _authServices.GetUserDetailsByUserTokenDetailsValue(readToken.Claims.First().Value);
var securityKey = new SymmetricSecurityKey(Encoding.Default.GetBytes(newTokenModel.SecrateKey));
SecurityToken securityToken;
TokenValidationParameters validationParameters = new TokenValidationParameters()
{
ValidAudience = newTokenModel.Audience,
ValidIssuer = newTokenModel.Issuer,
ValidateLifetime = true,
LifetimeValidator = this.LifetimeValidator,
IssuerSigningKey = securityKey
};
//extract and assign the user of the jwt
Thread.CurrentPrincipal = handler.ValidateToken(tokenNo, validationParameters, out securityToken);
return true;
}
catch (SecurityTokenValidationException ex)
{
LogicalThreadContext.Properties["exception"] = ex;
_log.Error(ex.Message);
msg = "Token No Not Match";
return false;
}
}
private bool LifetimeValidator(DateTime? notBefore, DateTime? expires, SecurityToken securityToken, TokenValidationParameters validationParameters)
{
if (expires != null)
{
if (DateTime.UtcNow < expires) return true;
}
return false;
}
public void CreateTokenNo(TokenManageModel tokenManageModel, out string tokenNo)
{
var newTokenManageModel = _authServices.GetUserDetails(tokenManageModel);
tokenNo = "";
//Set issued at date
DateTime issuedAt = DateTime.Now;
//http://stackoverflow.com/questions/18223868/how-to-encrypt-jwt-security-token
var tokenHandler = new JwtSecurityTokenHandler();
//create a identity and add claims to the user which we want to log in
ClaimsIdentity claimsIdentity = new ClaimsIdentity(new[]
{
new Claim(ClaimTypes.Name, newTokenManageModel.tokenUser)
});
var securityKey = new SymmetricSecurityKey(Encoding.Default.GetBytes(newTokenManageModel.SecrateKey));
var signingCredentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256Signature);
var token =
(JwtSecurityToken)
tokenHandler.CreateJwtSecurityToken(issuer: newTokenManageModel.Issuer, audience: newTokenManageModel.Audience,
subject: claimsIdentity, notBefore: issuedAt, expires: newTokenManageModel.ExpiresTime, signingCredentials: signingCredentials);
var tokenString = tokenHandler.WriteToken(token);
tokenNo = tokenString;
}
}
}

35
Business/packages.config

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="EntityFramework" version="6.1.0" targetFramework="net461" />
<package id="JWT" version="5.0.1" targetFramework="net461" />
<package id="log4net" version="2.0.8" targetFramework="net461" />
<package id="Microsoft.AspNet.Identity.Core" version="2.2.1" targetFramework="net461" />
<package id="Microsoft.AspNet.Identity.EntityFramework" version="2.2.1" targetFramework="net461" />
<package id="Microsoft.AspNet.Identity.Owin" version="2.2.1" targetFramework="net461" />
<package id="Microsoft.AspNet.Mvc" version="5.2.7" targetFramework="net461" />
<package id="Microsoft.AspNet.Razor" version="3.2.7" targetFramework="net461" />
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net461" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.7" targetFramework="net461" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.7" targetFramework="net461" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net461" />
<package id="Microsoft.AspNet.WebPages" version="3.2.7" targetFramework="net461" />
<package id="Microsoft.IdentityModel.JsonWebTokens" version="5.4.0" targetFramework="net461" />
<package id="Microsoft.IdentityModel.Logging" version="5.4.0" targetFramework="net461" />
<package id="Microsoft.IdentityModel.Tokens" version="5.4.0" targetFramework="net461" />
<package id="Microsoft.Owin" version="2.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security" version="2.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.Cookies" version="2.1.0" targetFramework="net461" />
<package id="Microsoft.Owin.Security.OAuth" version="2.1.0" targetFramework="net461" />
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net461" />
<package id="morelinq" version="3.3.2" targetFramework="net461" />
<package id="Newtonsoft.Json" version="12.0.1" targetFramework="net461" />
<package id="Owin" version="1.0" targetFramework="net461" />
<package id="System.IdentityModel.Tokens.Jwt" version="5.4.0" targetFramework="net461" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.2" targetFramework="net461" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
<package id="Unity" version="5.2.0" targetFramework="net461" />
<package id="Unity.Abstractions" version="4.0.2" targetFramework="net461" />
<package id="Unity.Container" version="5.9.3" targetFramework="net461" />
<package id="Unity.WebAPI" version="5.3.0" targetFramework="net461" />
<package id="WebActivatorEx" version="2.2.0" targetFramework="net461" />
</packages>

591
Cebuana/ApiService/CebuanaApi.cs

@ -0,0 +1,591 @@
using Cebuana.Model;
using Common.Models.RequestResponse;
using Common.Models.Status;
using Common.Models.TxnAmendModel;
using Common.Models.TxnModel;
using Common.TPService;
using Common.Utility;
using log4net;
using Newtonsoft.Json;
using System;
using System.IO;
using System.Net;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
namespace Cebuana.ApiService
{
public class CebuanaApi : ITPApiServices
{
private readonly ILog _log = LogManager.GetLogger(typeof(CebuanaApi));
protected string baseCPU_Url { get; set; }
protected string baseRTA_Url { get; set; }
protected string partnerCode { get; set; }
protected string password { get; set; }
protected string userid { get; set; }
protected string baseCPU_Update_Url { get; set; }
private const string PUSH_RTA_TXN = "/ProcessRTATransaction";
private const string PUSH_CPU_TXN = "/ws/PushRemittanceTransactionViaRest";
private const string CANCEL_CPU_TXN = "/UpdateRemittanceTransaction";
private const string AMEND_CPU_TXN = "/UpdateRemittanceTransaction";
private const string CPU_TRANSFER_STATUS = "/ws/LookUpRemittanceTransactionViaRest";
private const string RTA_TRANSFER_STATUS = "/InquireRTATransaction";
private const string RTA_GET_BANK_LIST = "/GetListOfBanks";
public CebuanaApi()
{
baseCPU_Url = GetStatic.ReadWebConfig("Cebuana_base_cpu_url", "");
baseRTA_Url = GetStatic.ReadWebConfig("Cebuana_base_rta_url", "");
partnerCode = GetStatic.ReadWebConfig("Cebuana_partner_Code", "");
password = GetStatic.ReadWebConfig("Cebuana_Password", "");
userid = GetStatic.ReadWebConfig("Cebuana_userid", "");
baseCPU_Update_Url = GetStatic.ReadWebConfig("Cebuana_base_cpu_update", "");
}
public TPResponse GetTPResponse<T>(T model, string MethodName) where T : class
{
switch (MethodName)
{
case "send":
return SendTransaction(model as SendTransaction);
case "status":
return GetStatus(model as GetStatus);
case "bankList":
return GetBankList(model as TxnAgent);
case "cancelSend":
return CancelTransaction(model as CancelTxn);
case "amendment":
return AmendTransaction(model as AmendTransaction);
default:
throw new NotImplementedException();
}
}
private TPResponse SendTransaction(SendTransaction model)
{
TPResponse _response = new TPResponse() { ResponseCode = "1" };
try
{
string sendTxnURL = "";
string requestXml = "";
string apiType = "";
if (model.Transaction.PaymentType.ToLower().Contains("cash"))
{
sendTxnURL = $"{baseCPU_Url}{PUSH_CPU_TXN}";
apiType = "CPU";
requestXml = MapSendTransactionDataCPU(model, apiType);
}
else
{
sendTxnURL = $"{baseRTA_Url}{PUSH_RTA_TXN}";
apiType = "RTA";
TransactionRequestRTA requestTxn = MapTransactionRequestRTA(model);
requestXml = JsonConvert.SerializeObject(requestTxn, Newtonsoft.Json.Formatting.None);
}
_log.Info($"{sendTxnURL}|REQUEST : {requestXml}");
HttpWebRequest httpWebRequest = WebRequest.Create(@sendTxnURL) as HttpWebRequest;
byte[] data = Encoding.UTF8.GetBytes(requestXml);
MemoryStream stm = new MemoryStream(data);
httpWebRequest.Method = "POST";
httpWebRequest.ContentType = apiType.Equals("CPU") ? "text/plain" : "text/json";
httpWebRequest.ContentLength = data.Length;
Stream httpstream = httpWebRequest.GetRequestStream();
httpstream.Write(data, 0, data.Length);
httpstream.Close();
HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse();
StreamReader reader = new StreamReader(resp.GetResponseStream());
String result = reader.ReadToEnd();
_log.Info($"{sendTxnURL}|RESPONSE : {result}");
if (apiType.Equals("CPU"))
{
var objResult = ParseXml<PushRemittanceResult>(result);
if (objResult.Code.Equals("00"))
{
_response.ResponseCode = "0";
}
else
{
_response.Id = objResult.TransactionID;
_response.Msg = objResult.Message;
_response.Extra = objResult.Code;
}
}
else
{
var objResult = JsonConvert.DeserializeObject<TransactionResult>(result.ToString());
if (objResult.Code.Equals("00"))
{
_response.ResponseCode = "0";
}
else
{
_response.Id = objResult.ReferenceNumber;
_response.Msg = objResult.Message;
_response.Extra = objResult.Code;
}
}
}
catch (Exception ex)
{
_response.ResponseCode = "999";
_response.Msg = ex.ToString();
}
return _response;
}
private string MapSendTransactionDataCPU(SendTransaction model, string type)
{
PushRemittanceRequest pushRemittance = new PushRemittanceRequest()
{
Amount = model.Transaction.PAmt.ToString(),
BeneficiaryFirstName = model.Receiver.RFirstName,
BeneficiaryLastName = $"{(!string.IsNullOrEmpty(model.Receiver.RMiddleName) ? $"{ model.Receiver.RMiddleName}{" "} " : "")}{model.Receiver.RLastName}",
ControlNumber = model.Transaction.JMEControlNo,
PartnerCode = partnerCode,
PayoutCountry = model.Receiver.RCountry.ToString(),
PayoutCurrency = model.Transaction.PCurr,
SenderFirstName = $"{(!string.IsNullOrEmpty(model.Sender.SMiddleName) ? $"{ model.Sender.SMiddleName}{" "} " : "")}{model.Sender.SFirstName}",
SenderLastName = model.Sender.SLastName1,
SendingCountry = model.Sender.SCountryName,
SendingCurrency = model.Transaction.CollCurr,
Password = password,
UserID = userid
};
return XmlSerialize<PushRemittanceRequest>(pushRemittance);
}
private string MapStatusRequestData(GetStatus model, string type)
{
LookUpRemittanceRequest lookUpRemittanceRequest = new LookUpRemittanceRequest()
{
ControlNumber = model.ControlNo,
PartnerCode = partnerCode,
Password = password,
UserID = userid
};
return XmlSerialize<LookUpRemittanceRequest>(lookUpRemittanceRequest);
}
private TPResponse GetBankList(TxnAgent model)
{
// BankList bankResponse = new BankList();
TPResponse bankResponse = new TPResponse();
try
{
string url = "";
string requestXml = "";
url = $"{baseRTA_Url}{RTA_GET_BANK_LIST}";
requestXml = MapBankList(model);
_log.Info($"{RTA_GET_BANK_LIST}|REQUEST : {requestXml}");
HttpWebRequest httpWebRequest = WebRequest.Create(@url) as HttpWebRequest;
byte[] data = Encoding.UTF8.GetBytes(requestXml);
MemoryStream stm = new MemoryStream(data);
httpWebRequest.Method = "POST";
httpWebRequest.ContentType = "application/xml";
httpWebRequest.ContentLength = data.Length;
Stream httpstream = httpWebRequest.GetRequestStream();
httpstream.Write(data, 0, data.Length);
httpstream.Close();
HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse();
StreamReader reader = new StreamReader(resp.GetResponseStream());
String result = reader.ReadToEnd();
var objResult = ParseXml<GetListOfBanksResult>(result);
if (objResult.BankCollection != null)
{
bankResponse.Data = objResult;
}
}
catch (Exception ex)
{
bankResponse.ResponseCode = "999";
bankResponse.Msg = ex.Message;
}
return bankResponse;
}
private string MapBankList(TxnAgent model)
{
StringBuilder stringBuilder = new StringBuilder($@"<TransactionRequest xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices"" i:type=""RTATransactionRequest"">");
PartnerCredentials partner = new PartnerCredentials()
{
PartnerCode = partnerCode,
UserID = userid,
Password = password
};
stringBuilder.Append(XmlSerialize<PartnerCredentials>(partner));
return stringBuilder.Append("</TransactionRequest>").ToString();
}
private TPResponse GetStatus(GetStatus model)
{
TPResponse _response = new TPResponse();
try
{
string url = "";
string requestXml = "";
string apiType = "";
if (model.PaymentMethod.ToLower().Contains("cash payment"))
{
url = $"{baseCPU_Url}{CPU_TRANSFER_STATUS}";
apiType = "CPU";
requestXml = MapStatusRequestData(model, apiType);
}
else
{
url = $"{baseRTA_Url}{RTA_TRANSFER_STATUS}";
apiType = "RTA";
RTAGetStatus requestStatus = MapRTAStatus(model);
requestXml = JsonConvert.SerializeObject(requestStatus, Newtonsoft.Json.Formatting.None);
}
_log.Info($"{url} | REQUEST : {requestXml}");
HttpWebRequest httpWebRequest = WebRequest.Create(@url) as HttpWebRequest;
byte[] data = Encoding.UTF8.GetBytes(requestXml);
MemoryStream stm = new MemoryStream(data);
httpWebRequest.Method = "POST";
httpWebRequest.ContentType = apiType.Equals("CPU") ? "text/plain" : "text/json";
httpWebRequest.ContentLength = data.Length;
Stream httpstream = httpWebRequest.GetRequestStream();
httpstream.Write(data, 0, data.Length);
httpstream.Close();
HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse();
StreamReader reader = new StreamReader(resp.GetResponseStream());
String result = reader.ReadToEnd();
_log.Info($"{url} | RESPONSE : {result}");
string paidStatus = "UNPAID";
if (apiType.Equals("CPU"))
{
var objResult = ParseXml<LookUpRemittanceResult>(result);
_response.Data = objResult;
_response.Extra2 = objResult.Code;
if (objResult.Code.Equals("02")) //Paid
{
paidStatus = "PAID";
_response.Extra3 = objResult.PayoutDate;
}
if (objResult.Code.Equals("03")) //cancelld
paidStatus = "CANCELLED";
_response.ResponseCode = paidStatus == "PAID" ? "0" : "1";
_response.Extra = paidStatus;
_response.Msg = objResult.Message;
}
else
{
var objResult = JsonConvert.DeserializeObject<TransactionResult>(result.ToString());
_response.Data = objResult;
_response.Extra2 = objResult.Code;
if (objResult.Code.Equals("04")) //Paid
paidStatus = "PAID";
_response.ResponseCode = paidStatus == "PAID" ? "0" : "1";
_response.Extra = paidStatus;
_response.Msg = objResult.Message;
}
}
catch (Exception ex)
{
_response.ResponseCode = "999";
_response.Msg = ex.ToString();
}
return _response;
}
private static string XmlSerialize<T>(T entity) where T : class
{
// removes version
XmlWriterSettings settings = new XmlWriterSettings();
settings.OmitXmlDeclaration = true;
XmlSerializer xsSubmit = new XmlSerializer(typeof(T));
using (StringWriter sw = new StringWriter())
using (XmlWriter writer = XmlWriter.Create(sw, settings))
{
// removes namespace
var xmlns = new XmlSerializerNamespaces();
xmlns.Add(string.Empty, string.Empty);
xsSubmit.Serialize(writer, entity, xmlns);
return sw.ToString(); // Your XML
}
}
private static string ObjectToXML(object input)
{
try
{
StringWriter stringwriter = new StringWriter();
XmlSerializer serializer = new XmlSerializer(input.GetType());
serializer.Serialize(stringwriter, input);
return stringwriter.ToString();
}
catch (Exception ex)
{
if (ex.InnerException != null)
ex = ex.InnerException;
return "Could not convert: " + ex.Message;
}
}
private T ParseXml<T>(string value) where T : class
{
var xmlSerializer = new XmlSerializer(typeof(T));
using (var textReader = new StringReader(value))
{
return (T)xmlSerializer.Deserialize(textReader);
}
}
private TPResponse CancelTransaction(CancelTxn model)
{
TPResponse _response = new TPResponse() { ResponseCode = "1" };
try
{
string cancelTxnURL = "";
string requestXml = "";
cancelTxnURL = $"{baseCPU_Update_Url}{CANCEL_CPU_TXN}";
requestXml = MapCancelTransaction(model);
_log.Info($"{cancelTxnURL}|REQUEST : {requestXml}");
HttpWebRequest httpWebRequest = WebRequest.Create(@cancelTxnURL) as HttpWebRequest;
byte[] data = Encoding.UTF8.GetBytes(requestXml);
MemoryStream stm = new MemoryStream(data);
httpWebRequest.Method = "POST";
httpWebRequest.ContentType = "application/xml";
httpWebRequest.ContentLength = data.Length;
Stream httpstream = httpWebRequest.GetRequestStream();
httpstream.Write(data, 0, data.Length);
httpstream.Close();
HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse();
StreamReader reader = new StreamReader(resp.GetResponseStream());
String result = reader.ReadToEnd();
_log.Info($"{cancelTxnURL}|RESPONSE : {result}");
var objResult = ParseXml<CancelTransaction.TransactionResult>(result);
if (objResult.Code.Equals("00"))
{
_response.ResponseCode = "0";
_response.Msg = "Transaction has been cancelled";
}
else
{
_response.Msg = objResult.Message;
_response.Extra = objResult.Code.ToString();
}
}
catch (Exception ex)
{
_response.ResponseCode = "999";
_response.Msg = ex.ToString();
}
return _response;
}
private string MapCancelTransaction(CancelTxn model)
{
StringBuilder stringBuilder = new StringBuilder($@"<TransactionRequest xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater"" i:type=""CancelRemittanceRequest"" >");
CancelTransaction cancelTransaction = new CancelTransaction()
{
PartnerCredentials = new PartnerCredentials()
{
PartnerCode = partnerCode,
UserID = userid,
Password = password
},
TranDetail = new CancelTransaction.TransactionDetails()
{
ControlNumber = model.PartnerPinNo,
Reason = model.CancelReason
}
//, __type= "AmendRemittanceRequest:#CebuanaRemittanceDirectUpdater"
};
//return JsonConvert.SerializeObject(cancelTransaction, Newtonsoft.Json.Formatting.None);
stringBuilder.Append(XmlSerialize<PartnerCredentials>(cancelTransaction.PartnerCredentials));
stringBuilder.Append(XmlSerialize<CancelTransaction.TransactionDetails>(cancelTransaction.TranDetail));
return stringBuilder.Append("</TransactionRequest>").ToString();
}
private TransactionRequestRTA MapTransactionRequestRTA(SendTransaction model)
{
var r = new TransactionRequestRTA
{
BeneficiaryDetails = new TransactionRequestRTA.BeneficiaryDetailsData()
{
BeneficiaryAddress1 = model.Receiver.RAdd1.Trim(),
BeneficiaryAddress2 = !string.IsNullOrEmpty(model.Receiver.RLocationName) ? model.Receiver.RLocationName : model.Receiver.RCountry,
BeneficiaryCity = model.Receiver.RCity.Trim(),
BeneficiaryFirstName = model.Receiver.RFirstName.Trim(),
BeneficiaryLastName = model.Receiver.RLastName.Trim(),
BeneficiaryMiddleName = model.Receiver.RMiddleName.Trim(),
BeneficiaryMobile = model.Receiver.RMobile,
BeneficiaryProvince = model.Receiver.RStateId,
BeneficiaryRelationshipWithSender = model.Receiver.RelWithSenderName.Trim(),
BeneficiaryZipcode = model.Receiver.RCityCode
},
PartnerCredentials = new TransactionRequestRTA.PartnerCredentialsData()
{
PartnerCode = partnerCode,
UserID = userid,
Password = password
},
RemitterDetails = new TransactionRequestRTA.RemitterDetailsData()
{
RemitterAddress1 = model.Sender.SAddress.Trim(),
RemitterAddress2 = model.Sender.SNativeCountry.Trim(),
RemitterCity = model.Sender.SCityId,
RemitterCountry = model.Sender.SCountryName.Trim(),
RemitterFirstName = model.Sender.SFirstName.Trim(),
RemitterLastName = model.Sender.SLastName1.Trim(),
RemitterMiddleName = model.Sender.SMiddleName.Trim(),
RemitterProvince = model.Sender.SState.Trim(),
RemitterZipcode = model.Sender.SZipCode
},
TransactionDetails = new TransactionRequestRTA.TransactionDetailsData()
{
AccountNumber = model.Receiver.RAccountNo,
Amount = String.Format("{0:0.00}", model.Transaction.PAmt),
Currency = model.Transaction.PCurr,
PurposeOfTransaction = model.Transaction.PurposeOfRemittanceName
},
BankCode = model.Agent.PBankId,
ReferenceNumber = model.Transaction.JMEControlNo,
__type = "RTATransactionRequest:#CebuanaPushRTAWCFServices"
};
return r;
}
private RTAGetStatus MapRTAStatus(GetStatus model)
{
var r = new RTAGetStatus
{
__type = "RTATransactionRequest:#CebuanaPushRTAWCFServices",
PartnerCredentials = new PartnerCredentials()
{
PartnerCode = partnerCode,
Password = password,
UserID = userid
},
ReferenceNumber = model.ControlNo
};
return r;
}
private TPResponse AmendTransaction(AmendTransaction model)
{
TPResponse _response = new TPResponse() { ResponseCode = "1" };
try
{
string amendTxnURL = "";
string requestXml = "";
amendTxnURL = $"{baseCPU_Update_Url}{AMEND_CPU_TXN}";
requestXml = MapAmendTransaction(model);
_log.Info($"{amendTxnURL}|REQUEST : {requestXml}");
HttpWebRequest httpWebRequest = WebRequest.Create(@amendTxnURL) as HttpWebRequest;
byte[] data = Encoding.UTF8.GetBytes(requestXml);
MemoryStream stm = new MemoryStream(data);
httpWebRequest.Method = "POST";
httpWebRequest.ContentType = "application/xml";
httpWebRequest.ContentLength = data.Length;
Stream httpstream = httpWebRequest.GetRequestStream();
httpstream.Write(data, 0, data.Length);
httpstream.Close();
HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse();
StreamReader reader = new StreamReader(resp.GetResponseStream());
String result = reader.ReadToEnd();
_log.Info($"{amendTxnURL}|RESPONSE : {result}");
var objResult = ParseXml<AmendTransactionPartner.TransactionResult>(result);
if (objResult.Code.Equals("00"))
{
_response.ResponseCode = "0";
}
else
{
// _response.Id = objResult.TransactionID;
_response.Msg = objResult.Message.Replace("'", "");
_response.Extra = objResult.Code;
}
}
catch (Exception ex)
{
_response.ResponseCode = "999";
_response.Msg = ex.Message;
_log.Error(ex.ToString());
}
return _response;
}
private string MapAmendTransaction(AmendTransaction model)
{
StringBuilder stringBuilder = new StringBuilder($@"<TransactionRequest xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater"" i:type=""AmendRemittanceRequest"" >");
AmendTransactionPartner amend = new AmendTransactionPartner()
{
PartnerCredentials = new PartnerCredentials()
{
PartnerCode = partnerCode,
UserID = userid,
Password = password
},
TranDetail = new AmendTransactionPartner.TransactionDetails()
{
ControlNumber = model.TfPinno,
Reason = model.Reason
},
BeneficiaryFirstName = $"{model.AmendReceiver.RFirstName.Trim()}{(!string.IsNullOrEmpty(model.AmendReceiver.RMiddleName) ? $"{" "}{ model.AmendReceiver.RMiddleName.Trim()}" : "")}",
BeneficiaryLastName = model.AmendReceiver.RLastName
};
stringBuilder.Append(XmlSerialize<PartnerCredentials>(amend.PartnerCredentials));
stringBuilder.Append(XmlSerialize<AmendTransactionPartner.TransactionDetails>(amend.TranDetail));
stringBuilder.Append($"<BeneficiaryFirstName>{amend.BeneficiaryFirstName}</BeneficiaryFirstName>");
stringBuilder.Append($"<BeneficiaryLastName>{amend.BeneficiaryLastName}</BeneficiaryLastName>");
return stringBuilder.Append("</TransactionRequest>").ToString();
}
}
}

26
Cebuana/App.config

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Unity.Abstractions" publicKeyToken="6d32ff45e0ccc69f" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.0.0" newVersion="2.2.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

83
Cebuana/Cebuana.csproj

@ -0,0 +1,83 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{80F5422A-4706-450C-8795-8EDAEE47F48C}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>Cebuana</RootNamespace>
<AssemblyName>Cebuana</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<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' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<StartupObject />
</PropertyGroup>
<ItemGroup>
<Reference Include="log4net, Version=2.0.13.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\WEB-CORE\Swift.web\bin\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ApiService\CebuanaApi.cs" />
<Compile Include="Model\AmendTransaction.cs" />
<Compile Include="Model\CancelTransaction.cs" />
<Compile Include="Model\BankList.cs" />
<Compile Include="Model\BeneficiaryDetails.cs" />
<Compile Include="Model\CheckStatus.cs" />
<Compile Include="Model\PartnerCredentials.cs" />
<Compile Include="Model\PushRemittanceRequest.cs" />
<Compile Include="Model\RemitterDetails.cs" />
<Compile Include="Model\TransactionDetails.cs" />
<Compile Include="Model\TransactionRequestRTA.cs" />
<Compile Include="Program.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Common\Common.csproj">
<Project>{D626FE23-51C8-4441-B3C7-92A54D1F572E}</Project>
<Name>Common</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

51
Cebuana/Model/AmendTransaction.cs

@ -0,0 +1,51 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace Cebuana.Model
{
//public class AmendTransactionPartner
//{
// public PartnerCredentials PartnerCredentials { get; set; }
// public TranDetails TranDetail { get; set; }
// public class TranDetails
// {
// public string ControlNumber { get; set; }
// public string Reason { get; set; }
// }
// public string BeneficiaryFirstName { get; set; }
// public string BeneficiaryLastName { get; set; }
//}
public class AmendTransactionPartner
{
public PartnerCredentials PartnerCredentials { get; set; }
public TransactionDetails TranDetail { get; set; }
public class TransactionDetails
{
public string ControlNumber { get; set; }
public string Reason { get; set; }
}
[XmlRoot(ElementName = "TransactionResult", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater")]
public class TransactionResult
{
[XmlElement(ElementName = "Code", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater")]
public string Code { get; set; }
[XmlElement(ElementName = "Message", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater")]
public string Message { get; set; }
}
public string BeneficiaryFirstName { get; set; }
public string BeneficiaryLastName { get; set; }
}
}

58
Cebuana/Model/BankList.cs

@ -0,0 +1,58 @@
using Common.Models.RequestResponse;
using System.Collections.Generic;
using System.Xml.Serialization;
namespace Cebuana.Model
{
[XmlRoot(ElementName = "BankList")]
public class BankList : TPResponse
{
[XmlElement(ElementName = "Bank")]
public List<BankDetails> Bank { get; set; }
[XmlElement(ElementName = "Code")]
public string Code { get; set; }
[XmlElement(ElementName = "Messatge")]
public string Messatge { get; set; }
[XmlRoot(ElementName = "BankDetails")]
public class BankDetails
{
[XmlElement(ElementName = "BankCode")]
public string BankCode { get; set; }
[XmlElement(ElementName = "BankName")]
public string BankName { get; set; }
}
}
[XmlRoot(ElementName = "BankDetails", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public class BankDetails
{
[XmlElement(ElementName = "BankCode", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public string BankCode { get; set; }
[XmlElement(ElementName = "BankName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public string BankName { get; set; }
}
[XmlRoot(ElementName = "BankCollection", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public class BankCollection
{
[XmlElement(ElementName = "BankDetails", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public List<BankDetails> BankDetails { get; set; }
}
[XmlRoot(ElementName = "GetListOfBanksResult", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public class GetListOfBanksResult
{
[XmlElement(ElementName = "BankCollection", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public BankCollection BankCollection { get; set; }
[XmlElement(ElementName = "Code", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public string Code { get; set; }
[XmlElement(ElementName = "Message", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public string Message { get; set; }
}
}

40
Cebuana/Model/BeneficiaryDetails.cs

@ -0,0 +1,40 @@
using System.Xml.Serialization;
namespace Cebuana.Model
{
[XmlRoot(ElementName = "BeneficiaryDetails")]
public class BeneficiaryDetails
{
[XmlElement(ElementName = "BeneficiaryAddress1")]
public string BeneficiaryAddress1 { get; set; }
[XmlElement(ElementName = "BeneficiaryAddress2")]
public string BeneficiaryAddress2 { get; set; }
[XmlElement(ElementName = "BeneficiaryCity")]
public string BeneficiaryCity { get; set; }
[XmlElement(ElementName = "BeneficiaryFirstName")]
public string BeneficiaryFirstName { get; set; }
[XmlElement(ElementName = "BeneficiaryLastName")]
public string BeneficiaryLastName { get; set; }
[XmlElement(ElementName = "BeneficiaryMiddleName")]
public string BeneficiaryMiddleName { get; set; }
[XmlElement(ElementName = "BeneficiaryMobile")]
public string BeneficiaryMobile { get; set; }
[XmlElement(ElementName = "BeneficiaryProvince")]
public string BeneficiaryProvince { get; set; }
[XmlElement(ElementName = "BeneficiaryRelationshipWithSender")]
public string BeneficiaryRelationshipWithSender { get; set; }
[XmlElement(ElementName = "BeneficiaryZipcode")]
public string BeneficiaryZipcode { get; set; }
}
}

37
Cebuana/Model/CancelTransaction.cs

@ -0,0 +1,37 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace Cebuana.Model
{
public class CancelTransaction
{
public PartnerCredentials PartnerCredentials { get; set; }
public TransactionDetails TranDetail { get; set; }
public class TransactionDetails
{
public string ControlNumber { get; set; }
public string Reason { get; set; }
}
[XmlRoot(ElementName = "TransactionResult", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater")]
public class TransactionResult
{
[XmlElement(ElementName = "Code", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater")]
public string Code { get; set; }
[XmlElement(ElementName = "Message", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaRemittanceDirectUpdater")]
public string Message { get; set; }
}
}
}

129
Cebuana/Model/CheckStatus.cs

@ -0,0 +1,129 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace Cebuana.Model
{
[XmlRoot(ElementName = "TransactionRequest", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRTAWCFServices")]
public class TransactionRequest
{
[XmlElement(ElementName = "PartnerCredentials")]
public PartnerCredentials PartnerCredentials { get; set; }
[XmlElement(ElementName = "ReferenceNumber")]
[DefaultValue("")]
public string ReferenceNumber { get; set; }
}
[XmlRoot(ElementName = "LookUpRemittanceRequest")]
public class LookUpRemittanceRequest
{
[XmlElement(ElementName = "ControlNumber")]
public string ControlNumber { get; set; }
[XmlElement(ElementName = "PartnerCode")]
public string PartnerCode { get; set; }
[XmlElement(ElementName = "Password")]
public string Password { get; set; }
[XmlElement(ElementName = "UserID")]
public string UserID { get; set; }
}
[XmlRoot(ElementName = "BeneficiaryMobileNumber", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public class BeneficiaryMobileNumber
{
[XmlAttribute(AttributeName = "nil", Namespace = "http://www.w3.org/2001/XMLSchema-instance")]
public string Nil { get; set; }
}
[XmlRoot(ElementName = "PurposeofTransaction", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public class PurposeofTransaction
{
[XmlAttribute(AttributeName = "nil", Namespace = "http://www.w3.org/2001/XMLSchema-instance")]
public string Nil { get; set; }
}
[XmlRoot(ElementName = "RelationshipToBeneficiary", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public class RelationshipToBeneficiary
{
[XmlAttribute(AttributeName = "nil", Namespace = "http://www.w3.org/2001/XMLSchema-instance")]
public string Nil { get; set; }
}
[XmlRoot(ElementName = "PayoutDate", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public class PayoutDate
{
[XmlAttribute(AttributeName = "nil", Namespace = "http://www.w3.org/2001/XMLSchema-instance")]
public string Nil { get; set; }
}
[XmlRoot(ElementName = "LookUpRemittanceResult", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public class LookUpRemittanceResult
{
[XmlElement(ElementName = "Amount", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string Amount { get; set; }
[XmlElement(ElementName = "BeneficiaryFirstName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string BeneficiaryFirstName { get; set; }
[XmlElement(ElementName = "BeneficiaryFullName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string BeneficiaryFullName { get; set; }
[XmlElement(ElementName = "BeneficiaryLastName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string BeneficiaryLastName { get; set; }
[XmlElement(ElementName = "BeneficiaryMiddleName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string BeneficiaryMiddleName { get; set; }
[XmlElement(ElementName = "BeneficiaryMobileNumber", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public BeneficiaryMobileNumber BeneficiaryMobileNumber { get; set; }
[XmlElement(ElementName = "ControlNumber", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string ControlNumber { get; set; }
[XmlElement(ElementName = "PartnerCode", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string PartnerCode { get; set; }
[XmlElement(ElementName = "PayoutCountry", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string PayoutCountry { get; set; }
[XmlElement(ElementName = "PayoutCurrency", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string PayoutCurrency { get; set; }
[XmlElement(ElementName = "PurposeofTransaction", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public PurposeofTransaction PurposeofTransaction { get; set; }
[XmlElement(ElementName = "RelationshipToBeneficiary", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public RelationshipToBeneficiary RelationshipToBeneficiary { get; set; }
[XmlElement(ElementName = "SenderFirstName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string SenderFirstName { get; set; }
[XmlElement(ElementName = "SenderFullName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string SenderFullName { get; set; }
[XmlElement(ElementName = "SenderLastName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string SenderLastName { get; set; }
[XmlElement(ElementName = "SenderMiddleName", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string SenderMiddleName { get; set; }
[XmlElement(ElementName = "SendingCountry", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string SendingCountry { get; set; }
[XmlElement(ElementName = "SendingCurrency", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string SendingCurrency { get; set; }
[XmlElement(ElementName = "Code", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string Code { get; set; }
[XmlElement(ElementName = "Message", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string Message { get; set; }
[XmlElement(ElementName = "PayoutDate", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string PayoutDate { get; set; }
}
public class RTAGetStatus
{
public string __type { get; set; }
public PartnerCredentials PartnerCredentials { get; set; }
public string ReferenceNumber { get; set; }
}
}

25
Cebuana/Model/PartnerCredentials.cs

@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace Cebuana.Model
{
[XmlRoot(ElementName = "PartnerCredentials")]
public class PartnerCredentials
{
[XmlElement(ElementName = "PartnerCode")]
public string PartnerCode { get; set; }
[XmlElement(ElementName = "Password")]
public string Password { get; set; }
[XmlElement(ElementName = "UserID")]
public string UserID { get; set; }
}
}

68
Cebuana/Model/PushRemittanceRequest.cs

@ -0,0 +1,68 @@
using System.Xml.Serialization;
namespace Cebuana.Model
{
[XmlRoot(ElementName = "PushRemittanceRequest")]
public class PushRemittanceRequest
{
[XmlElement(ElementName = "Amount")]
public string Amount { get; set; }
[XmlElement(ElementName = "BeneficiaryFirstName")]
public string BeneficiaryFirstName { get; set; }
[XmlElement(ElementName = "BeneficiaryLastName")]
public string BeneficiaryLastName { get; set; }
[XmlElement(ElementName = "ControlNumber")]
public string ControlNumber { get; set; }
[XmlElement(ElementName = "PartnerCode")]
public string PartnerCode { get; set; }
[XmlElement(ElementName = "PayoutCountry")]
public string PayoutCountry { get; set; }
[XmlElement(ElementName = "PayoutCurrency")]
public string PayoutCurrency { get; set; }
[XmlElement(ElementName = "SenderFirstName")]
public string SenderFirstName { get; set; }
[XmlElement(ElementName = "SenderLastName")]
public string SenderLastName { get; set; }
[XmlElement(ElementName = "SendingCountry")]
public string SendingCountry { get; set; }
[XmlElement(ElementName = "SendingCurrency")]
public string SendingCurrency { get; set; }
[XmlElement(ElementName = "Password")]
public string Password { get; set; }
[XmlElement(ElementName = "UserID")]
public string UserID { get; set; }
}
[XmlRoot(ElementName = "PushRemittanceResult", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public class PushRemittanceResult
{
[XmlElement(ElementName = "Code", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string Code { get; set; }
[XmlElement(ElementName = "Message", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string Message { get; set; }
[XmlElement(ElementName = "TransactionID", Namespace = "http://schemas.datacontract.org/2004/07/CebuanaPushRemittanceWCFService")]
public string TransactionID { get; set; }
}
public class TransactionResult
{
public string Code { get; set; }
public string Message { get; set; }
public string ReferenceNumber { get; set; }
}
}

37
Cebuana/Model/RemitterDetails.cs

@ -0,0 +1,37 @@
using System.Xml.Serialization;
namespace Cebuana.Model
{
[XmlRoot(ElementName = "RemitterDetails")]
public class RemitterDetails
{
[XmlElement(ElementName = "RemitterAddress1")]
public string RemitterAddress1 { get; set; }
[XmlElement(ElementName = "RemitterAddress2")]
public string RemitterAddress2 { get; set; }
[XmlElement(ElementName = "RemitterCity")]
public string RemitterCity { get; set; }
[XmlElement(ElementName = "RemitterCountry")]
public string RemitterCountry { get; set; }
[XmlElement(ElementName = "RemitterFirstName")]
public string RemitterFirstName { get; set; }
[XmlElement(ElementName = "RemitterLastName")]
public string RemitterLastName { get; set; }
[XmlElement(ElementName = "RemitterMiddleName")]
public string RemitterMiddleName { get; set; }
[XmlElement(ElementName = "RemitterProvince")]
public string RemitterProvince { get; set; }
[XmlElement(ElementName = "RemitterZipcode")]
public string RemitterZipcode { get; set; }
}
}

21
Cebuana/Model/TransactionDetails.cs

@ -0,0 +1,21 @@
using System.Xml.Serialization;
namespace Cebuana.Model
{
[XmlRoot(ElementName = "TransactionDetails")]
public class TransactionDetails
{
[XmlElement(ElementName = "AccountNumber")]
public string AccountNumber { get; set; }
[XmlElement(ElementName = "Amount")]
public string Amount { get; set; }
[XmlElement(ElementName = "Currency")]
public string Currency { get; set; }
[XmlElement(ElementName = "PurposeOfTransaction")]
public string PurposeOfTransaction{ get; set; }
}
}

94
Cebuana/Model/TransactionRequestRTA.cs

@ -0,0 +1,94 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;
namespace Cebuana.Model
{
//[XmlRoot(ElementName = "TransactionRequestRTA")]
public class TransactionRequestRTA
{
public string __type { get; set; }
public BeneficiaryDetailsData BeneficiaryDetails { get; set; }
public PartnerCredentialsData PartnerCredentials { get; set; }
public RemitterDetailsData RemitterDetails { get; set; }
public TransactionDetailsData TransactionDetails { get; set; }
public string BankCode { get; set; }
public string ReferenceNumber { get; set; }
public class BeneficiaryDetailsData
{
public string BeneficiaryAddress1 { get; set; }
public string BeneficiaryAddress2 { get; set; }
public string BeneficiaryCity { get; set; }
public string BeneficiaryFirstName { get; set; }
public string BeneficiaryLastName { get; set; }
public string BeneficiaryMiddleName { get; set; }
public string BeneficiaryMobile { get; set; }
public string BeneficiaryProvince { get; set; }
public string BeneficiaryRelationshipWithSender { get; set; }
public string BeneficiaryZipcode { get; set; }
}
public class PartnerCredentialsData
{
public string PartnerCode { get; set; }
public string Password { get; set; }
public string UserID { get; set; }
}
public class RemitterDetailsData
{
public string RemitterAddress1 { get; set; }
public string RemitterAddress2 { get; set; }
public string RemitterCity { get; set; }
public string RemitterCountry { get; set; }
public string RemitterFirstName { get; set; }
public string RemitterLastName { get; set; }
public string RemitterMiddleName { get; set; }
public string RemitterProvince { get; set; }
public string RemitterZipcode { get; set; }
}
public class TransactionDetailsData
{
public string AccountNumber { get; set; }
public string Amount { get; set; }
public string Currency { get; set; }
public string PurposeOfTransaction { get; set; }
}
//[XmlElement(ElementName = "BeneficiaryDetails")]
//public BeneficiaryDetails BeneficiaryDetails { get; set; }
//[XmlElement(ElementName = "PartnerCredentials")]
//public PartnerCredentials PartnerCredentials { get; set; }
//[XmlElement(ElementName = "RemitterDetails")]
//public RemitterDetails RemitterDetails { get; set; }
//[XmlElement(ElementName = "TransactionDetails")]
//public TransactionDetails TransactionDetails { get; set; }
//[XmlElement(ElementName = "BankCode")]
//public string BankCode { get; set; }
//[XmlElement(ElementName = "ReferenceNumber")]
//public string ReferenceNumber { get; set; }
//[XmlAttribute(AttributeName = "type")]
//public string Type { get; set; }
//[XmlAttribute(AttributeName = "i")]
//public string I { get; set; }
//[XmlAttribute(AttributeName = "xmlns")]
//public string Xmlns { get; set; }
//[XmlText]
//public string Text { get; set; }
}
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save