Compare commits
13 Commits
31d2ff8e64
...
v1.4.0.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b8ad580ae5 | ||
|
|
e5122c677f | ||
|
|
5d5f113d89 | ||
|
|
7588f83965 | ||
|
|
ca2cf9581b | ||
|
|
8bfc3d497f | ||
|
|
edbd34de61 | ||
|
|
93d1fc20b4 | ||
|
|
a3a929e229 | ||
|
|
9521693e27 | ||
|
|
089c52fa99 | ||
|
|
10ef66ef25 | ||
|
|
28c2733e5b |
@@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration />
|
||||
@@ -62,6 +62,25 @@ $packageJson = [regex]::Replace($packageJson, '"Version"\s*:\s*"[^"]+"', "`"Vers
|
||||
$packageJson = [regex]::Replace($packageJson, '"LastUpdatedDate"\s*:\s*"[^"]+"', "`"LastUpdatedDate`": `"$(Get-Date -Format 'yyyy-MM-ddTHH:mm:ss')`"")
|
||||
[System.IO.File]::WriteAllText($packageJsonPath, $packageJson, [System.Text.UTF8Encoding]::new($true))
|
||||
|
||||
$configDataPath = Join-Path $packageDir 'install\1010_Config_Data\02-01-0080 C4IT_F4SDConfigurationType.dat'
|
||||
if (-not (Test-Path -LiteralPath $configDataPath)) {
|
||||
throw "Configuration data file not found: $configDataPath"
|
||||
}
|
||||
|
||||
$configData = [System.IO.File]::ReadAllText($configDataPath)
|
||||
$configData = [regex]::Replace(
|
||||
$configData,
|
||||
'(<C4IT_AddonConfigClassBase>[\s\S]*?<Version>)[^<]*(</Version>)',
|
||||
"`${1}$PackageVersion`${2}",
|
||||
[System.Text.RegularExpressions.RegexOptions]::Singleline
|
||||
)
|
||||
|
||||
if ($configData -notmatch "<Version>$([regex]::Escape($PackageVersion))</Version>") {
|
||||
throw "Could not update C4IT_F4SDConfigurationType Version to $PackageVersion in $configDataPath"
|
||||
}
|
||||
|
||||
[System.IO.File]::WriteAllText($configDataPath, $configData, [System.Text.UTF8Encoding]::new($true))
|
||||
|
||||
$textFileExtensions = @('.json', '.xml', '.dat', '.type', '.class', '.config', '.host')
|
||||
Get-ChildItem -LiteralPath $packageDir -Recurse -File |
|
||||
Where-Object { $textFileExtensions -contains $_.Extension.ToLowerInvariant() } |
|
||||
|
||||
@@ -94,27 +94,35 @@ namespace C4IT.F4SD
|
||||
return GetRequiredService<IJournalService>();
|
||||
}
|
||||
|
||||
[Route("getDirectLinkCreateTicket/{sid}/{assetname}"), HttpGet]
|
||||
public async Task<F4SDHelperService.DirectLink> getDirectLinkCreateTicket(string sid = "", string assetname = "")
|
||||
[Route("getDirectLinkCreateTicket"), HttpGet]
|
||||
public async Task<F4SDHelperService.DirectLink> getDirectLinkCreateTicket([FromUri] string sid = "", [FromUri] string assetname = "")
|
||||
{
|
||||
await Task.Delay(0);
|
||||
sid = QueryValue(sid, nameof(sid));
|
||||
assetname = QueryValue(assetname, nameof(assetname));
|
||||
return await _f4stHelperService.getDirectLinkCreateTicket(sid, assetname)
|
||||
?? new F4SDHelperService.DirectLink();
|
||||
}
|
||||
[Route("getDirectLinkF4SD/{eoid}/{type}"), HttpGet]
|
||||
public async Task<string> getDirectLinkF4SD(Guid eoid, string type)
|
||||
[Route("getDirectLinkF4SD"), HttpGet]
|
||||
public async Task<string> getDirectLinkF4SD([FromUri] Guid eoid, [FromUri] string type)
|
||||
{
|
||||
eoid = QueryValue(eoid, nameof(eoid));
|
||||
type = QueryValue(type, nameof(type));
|
||||
return await _f4stHelperService.getDirectLinkF4SD(eoid, type) ?? string.Empty;
|
||||
}
|
||||
|
||||
[Route("getTicketList/{sid}/{hours}/{queueoption}/{queues}"), HttpGet]
|
||||
[Route("getTicketList"), HttpGet]
|
||||
public async Task<List<cF4SDTicketSummary>> getTicketList(
|
||||
string sid,
|
||||
int hours,
|
||||
int queueoption = 0,
|
||||
string queues = ""
|
||||
[FromUri] string sid,
|
||||
[FromUri] int hours,
|
||||
[FromUri] int queueoption = 0,
|
||||
[FromUri] string queues = ""
|
||||
)
|
||||
{
|
||||
sid = QueryValue(sid, nameof(sid));
|
||||
hours = QueryValue(hours, nameof(hours));
|
||||
queueoption = QueryValue(queueoption, nameof(queueoption));
|
||||
queues = QueryValue(queues, nameof(queues));
|
||||
var decodedPairs = ParseQueues(queues);
|
||||
|
||||
// Nun weiterreichen an Service
|
||||
@@ -128,8 +136,9 @@ namespace C4IT.F4SD
|
||||
|
||||
|
||||
[Route("getTicketDetails"), HttpGet]
|
||||
public async Task<cF4SDTicket> getTicketDetails(Guid objectId)
|
||||
public async Task<cF4SDTicket> getTicketDetails([FromUri] Guid objectId)
|
||||
{
|
||||
objectId = QueryValue(objectId, nameof(objectId));
|
||||
var tickets = await _f4stHelperService.getTicketDetails(new List<Guid>() { objectId });
|
||||
if (tickets?.Count > 0)
|
||||
return tickets[0];
|
||||
@@ -138,20 +147,26 @@ namespace C4IT.F4SD
|
||||
}
|
||||
|
||||
[Route("getTicketHistory"), HttpGet]
|
||||
public async Task<List<cTicketJournalItem>> getTicketHistory(Guid objectId)
|
||||
public async Task<List<cTicketJournalItem>> getTicketHistory([FromUri] Guid objectId)
|
||||
{
|
||||
objectId = QueryValue(objectId, nameof(objectId));
|
||||
return await _f4stHelperService.GetJournalEntries(objectId) ?? new List<cTicketJournalItem>();
|
||||
}
|
||||
|
||||
[Route("getTicketOverviewCounts"), HttpGet]
|
||||
public async Task<F4SDHelperService.TicketOverviewCountsResult> getTicketOverviewCounts(
|
||||
string sid,
|
||||
string scope = "personal",
|
||||
string keys = "",
|
||||
int queueoption = 0,
|
||||
string queues = ""
|
||||
[FromUri] string sid,
|
||||
[FromUri] string scope = "personal",
|
||||
[FromUri] string keys = "",
|
||||
[FromUri] int queueoption = 0,
|
||||
[FromUri] string queues = ""
|
||||
)
|
||||
{
|
||||
sid = QueryValue(sid, nameof(sid));
|
||||
scope = QueryValue(scope, nameof(scope));
|
||||
keys = QueryValue(keys, nameof(keys));
|
||||
queueoption = QueryValue(queueoption, nameof(queueoption));
|
||||
queues = QueryValue(queues, nameof(queues));
|
||||
var parsedKeys = (keys ?? string.Empty)
|
||||
.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
|
||||
.Select(key => key.Trim())
|
||||
@@ -189,14 +204,20 @@ namespace C4IT.F4SD
|
||||
|
||||
[Route("getTicketOverviewRelations"), HttpGet]
|
||||
public async Task<List<F4SDHelperService.TicketOverviewRelationDto>> getTicketOverviewRelations(
|
||||
string sid,
|
||||
string scope = "personal",
|
||||
string key = "",
|
||||
int count = 0,
|
||||
int queueoption = 0,
|
||||
string queues = ""
|
||||
[FromUri] string sid,
|
||||
[FromUri] string scope = "personal",
|
||||
[FromUri] string key = "",
|
||||
[FromUri] int count = 0,
|
||||
[FromUri] int queueoption = 0,
|
||||
[FromUri] string queues = ""
|
||||
)
|
||||
{
|
||||
sid = QueryValue(sid, nameof(sid));
|
||||
scope = QueryValue(scope, nameof(scope));
|
||||
key = QueryValue(key, nameof(key));
|
||||
count = QueryValue(count, nameof(count));
|
||||
queueoption = QueryValue(queueoption, nameof(queueoption));
|
||||
queues = QueryValue(queues, nameof(queues));
|
||||
var decodedQueues = ParseQueues(queues);
|
||||
return await _f4stHelperService.getTicketOverviewRelations(sid, scope, key, count, queueoption, decodedQueues)
|
||||
?? new List<F4SDHelperService.TicketOverviewRelationDto>();
|
||||
@@ -213,9 +234,12 @@ namespace C4IT.F4SD
|
||||
*/
|
||||
[Route("getPickup/{name}"), HttpGet]
|
||||
//[CacheOutput(UseETAG = true)]
|
||||
public async Task<EntityEnumeration> getPickup(string name, EntityEnumerationVisibilityMode mode = EntityEnumerationVisibilityMode.None, Int32 group = -1)
|
||||
public async Task<EntityEnumeration> getPickup([FromUri] string name, [FromUri] EntityEnumerationVisibilityMode mode = EntityEnumerationVisibilityMode.None, [FromUri] Int32 group = -1)
|
||||
{
|
||||
await Task.Delay(0);
|
||||
name = QueryValue(name, nameof(name));
|
||||
mode = QueryValue(mode, nameof(mode));
|
||||
group = QueryValue(group, nameof(group));
|
||||
EntityEnumeration enumerationTemp = GetEnumeration(name, mode);
|
||||
var vals = enumerationTemp.Values;
|
||||
|
||||
@@ -251,8 +275,11 @@ namespace C4IT.F4SD
|
||||
}
|
||||
[HttpGet]
|
||||
[Route("getRoleMemberships")]
|
||||
public async Task<object> getRoleMemberships(string sid = "", string upn = "", Guid? id = null)
|
||||
public async Task<object> getRoleMemberships([FromUri] string sid = "", [FromUri] string upn = "", [FromUri] Guid? id = null)
|
||||
{
|
||||
sid = QueryValue(sid, nameof(sid));
|
||||
upn = QueryValue(upn, nameof(upn));
|
||||
id = QueryValue(id, nameof(id));
|
||||
var filter = "";
|
||||
|
||||
if (id != null && id.Value != Guid.Empty)
|
||||
@@ -374,6 +401,38 @@ namespace C4IT.F4SD
|
||||
?? Guid.Empty;
|
||||
}
|
||||
|
||||
private string GetQueryValue(string name)
|
||||
{
|
||||
return Request?.GetQueryNameValuePairs()
|
||||
.FirstOrDefault(pair => string.Equals(pair.Key, name, StringComparison.OrdinalIgnoreCase))
|
||||
.Value;
|
||||
}
|
||||
|
||||
private string QueryValue(string value, string name)
|
||||
{
|
||||
return GetQueryValue(name) ?? value ?? string.Empty;
|
||||
}
|
||||
|
||||
private int QueryValue(int value, string name)
|
||||
{
|
||||
return int.TryParse(GetQueryValue(name), out var parsed) ? parsed : value;
|
||||
}
|
||||
|
||||
private Guid QueryValue(Guid value, string name)
|
||||
{
|
||||
return Guid.TryParse(GetQueryValue(name), out var parsed) ? parsed : value;
|
||||
}
|
||||
|
||||
private Guid? QueryValue(Guid? value, string name)
|
||||
{
|
||||
return Guid.TryParse(GetQueryValue(name), out var parsed) ? parsed : value;
|
||||
}
|
||||
|
||||
private TEnum QueryValue<TEnum>(TEnum value, string name) where TEnum : struct
|
||||
{
|
||||
return Enum.TryParse<TEnum>(GetQueryValue(name), true, out var parsed) ? parsed : value;
|
||||
}
|
||||
|
||||
private static List<cApiM42TicketQueueInfo> ParseQueues(string queues)
|
||||
{
|
||||
return (queues ?? string.Empty)
|
||||
@@ -398,17 +457,24 @@ namespace C4IT.F4SD
|
||||
[Route("isAlive"), HttpGet]
|
||||
public IHttpActionResult isAlive()
|
||||
{
|
||||
return new StatusCodeResult(HttpStatusCode.NoContent);
|
||||
var response = new HttpResponseMessage(HttpStatusCode.NoContent)
|
||||
{
|
||||
RequestMessage = Request
|
||||
};
|
||||
response.Headers.ConnectionClose = true;
|
||||
|
||||
return ResponseMessage(response);
|
||||
}
|
||||
|
||||
[Route("loglevel"), HttpGet]
|
||||
public async Task<string> setDebugMode(string debug = "0")
|
||||
public async Task<string> setDebugMode([FromUri] string debug = "0")
|
||||
{
|
||||
var CM = MethodBase.GetCurrentMethod();
|
||||
LogMethodBegin(CM);
|
||||
try
|
||||
{
|
||||
await Task.Delay(0);
|
||||
debug = QueryValue(debug, nameof(debug));
|
||||
DefaultLogger.Manager.Level = debug == "1" || debug.Equals("true", StringComparison.OrdinalIgnoreCase) ? LogLevels.Debug : LogLevels.Info;
|
||||
return DefaultLogger.Manager.Level.ToString();
|
||||
}
|
||||
@@ -424,10 +490,13 @@ namespace C4IT.F4SD
|
||||
}
|
||||
|
||||
[Route("log"), HttpGet]
|
||||
public IHttpActionResult getLog(string download = "0", int count = 50, string filter = "")
|
||||
public IHttpActionResult getLog([FromUri] string download = "0", [FromUri] int count = 50, [FromUri] string filter = "")
|
||||
{
|
||||
try
|
||||
{
|
||||
download = QueryValue(download, nameof(download));
|
||||
count = QueryValue(count, nameof(count));
|
||||
filter = QueryValue(filter, nameof(filter));
|
||||
var response = _f4stHelperService.privGetLog(download, count, Request, filter);
|
||||
if (response == null)
|
||||
return new StatusCodeResult(HttpStatusCode.NoContent);
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,9 +0,0 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
pushd "%~dp0.."
|
||||
dotnet build "F4SDM42WebApi\F4SD - M42WebApi.csproj" -c Release /p:M42SignAssemblies=true %*
|
||||
set EXITCODE=%ERRORLEVEL%
|
||||
popd
|
||||
|
||||
exit /b %EXITCODE%
|
||||
@@ -1,16 +0,0 @@
|
||||
{
|
||||
"Id": "6673a25d-33d6-4072-91d9-abed4be1a966",
|
||||
"Vendor": "Consulting4IT GmbH",
|
||||
"Name": "C4IT.F4SD.M42WebApi",
|
||||
"Version": "1.3.0.0",
|
||||
"Prerequisites": {
|
||||
"MinimalRequiredProductVersion": "26.1.0",
|
||||
"DependentPackages": []
|
||||
},
|
||||
"SetupDirectives": {
|
||||
"MaintenanceMode": false,
|
||||
"RecycleWebApplication": false,
|
||||
"RestartM42WindowsServices": false
|
||||
},
|
||||
"Sandboxed": true
|
||||
}
|
||||
@@ -5,17 +5,20 @@
|
||||
<Script Major="2" Minor="1" Build="30" Type="dat" Name="0030_Navigation_C4IT_Addon_ServiceDesk.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0000_Global\0030_Navigation_C4IT_Addon_ServiceDesk.dat" />
|
||||
<Script Major="2" Minor="1" Build="40" Type="dat" Name="0040_Navigation_C4IT_Addon_ServiceCatalog.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0000_Global\0040_Navigation_C4IT_Addon_ServiceCatalog.dat" />
|
||||
<Script Major="2" Minor="1" Build="50" Type="dat" Name="02-01-0050 PLSLServiceTypeWebAPI.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0001_WebAPIService\02-01-0050 PLSLServiceTypeWebAPI.dat" />
|
||||
<Script Major="2" Minor="1" Build="60" Type="dat" Name="02-01-0060 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0060 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="70" Type="dat" Name="02-01-0070 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0070 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="80" Type="dat" Name="02-01-0080 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0080 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="90" Type="dat" Name="02-01-0090 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0090 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="100" Type="dat" Name="02-01-0100 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0100 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="110" Type="dat" Name="02-01-0110 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0110 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="120" Type="dat" Name="02-01-0120 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0120 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="130" Type="dat" Name="02-01-0130 PLSLWebServiceOperationType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\02-01-0130 PLSLWebServiceOperationType.dat" />
|
||||
<Script Major="2" Minor="1" Build="60" Type="dat" Name="getdirectlinkcreateticket.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getdirectlinkcreateticket.dat" />
|
||||
<Script Major="2" Minor="1" Build="70" Type="dat" Name="getdirectlinkf4sd.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getdirectlinkf4sd.dat" />
|
||||
<Script Major="2" Minor="1" Build="80" Type="dat" Name="getlog.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getlog.dat" />
|
||||
<Script Major="2" Minor="1" Build="90" Type="dat" Name="getticketdetails.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getticketdetails.dat" />
|
||||
<Script Major="2" Minor="1" Build="100" Type="dat" Name="gettickethistory.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\gettickethistory.dat" />
|
||||
<Script Major="2" Minor="1" Build="110" Type="dat" Name="getticketlist.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getticketlist.dat" />
|
||||
<Script Major="2" Minor="1" Build="120" Type="dat" Name="isalive.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\isalive.dat" />
|
||||
<Script Major="2" Minor="1" Build="130" Type="dat" Name="setdebugmode.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\setdebugmode.dat" />
|
||||
<Script Major="2" Minor="1" Build="140" Type="dat" Name="getmyrolememberships.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getmyrolememberships.dat" />
|
||||
<Script Major="2" Minor="1" Build="150" Type="dat" Name="getpickup.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getpickup.dat" />
|
||||
<Script Major="2" Minor="1" Build="160" Type="dat" Name="getrolememberships.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getrolememberships.dat" />
|
||||
<Script Major="2" Minor="1" Build="161" Type="dat" Name="getticketoverviewcounts.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getticketoverviewcounts.dat" />
|
||||
<Script Major="2" Minor="1" Build="162" Type="dat" Name="getticketoverviewcountsbyroles.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getticketoverviewcountsbyroles.dat" />
|
||||
<Script Major="2" Minor="1" Build="163" Type="dat" Name="getticketoverviewrelations.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0002_WebServiceOperation\getticketoverviewrelations.dat" />
|
||||
<Script Major="2" Minor="1" Build="170" Type="dat" Name="02-01-0150 PDRActionType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0003_UUXActions\02-01-0150 PDRActionType.dat" />
|
||||
<Script Major="2" Minor="1" Build="180" Type="dat" Name="02-01-0160 PDRActionType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0003_UUXActions\02-01-0160 PDRActionType.dat" />
|
||||
<Script Major="2" Minor="1" Build="190" Type="dat" Name="02-01-0170 PDRActionType.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\0003_UUXActions\02-01-0170 PDRActionType.dat" />
|
||||
@@ -42,4 +45,4 @@
|
||||
<Script Major="2" Minor="1" Build="400" Type="dat" Name="Ticket.Transform_Audience.dat" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\1090_Audience\Ticket.Transform_Audience.dat" />
|
||||
<Script Major="2" Minor="1" Build="410" Type="type" Name="02-01-0020 C4IT_F4SDConfigurationType_create-C4IT_F4SDConfigurationType.type" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\ZZZ_SchemaUpdates\02-01-0020 C4IT_F4SDConfigurationType_create-C4IT_F4SDConfigurationType.type" />
|
||||
<Script Major="2" Minor="1" Build="420" Type="class" Name="C4IT_AddonConfigClassBase-C4IT_AddonConfigClassBase.class" PackageVersion="1.4" Mode="Merge" Register="false" FilePath="install\ZZZ_SchemaUpdates\C4IT_AddonConfigClassBase-C4IT_AddonConfigClassBase.class" />
|
||||
</SchemaScripts>
|
||||
</SchemaScripts>
|
||||
|
||||
@@ -137,9 +137,10 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>b3193051-6fe6-cdd2-7d76-08da9bbec2b6</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"assetname":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getDirectLinkCreateTicket(sid, assetname)</Name>
|
||||
<RouteTemplate>getDirectLinkCreateTicket/{sid}/{assetname}</RouteTemplate>
|
||||
<ResponseContract>{"UsedTypes":{"C4IT_F4SD_F4SDHelperService+DirectLink":{"Descriptor":{"Link":{"Type":"StringType"},"SubjectParameter":{"Type":"StringType"},"DescriptionParameter":{"Type":"StringType"}}}},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"C4IT_F4SD_F4SDHelperService+DirectLink"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType","Source":0},"assetname":{"Type":"StringType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getDirectLinkCreateTicket(sid,assetname)</Name>
|
||||
<RouteTemplate>getDirectLinkCreateTicket</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
<Service>dcd66369-4933-ed11-1b9c-e3e293f5401c</Service>
|
||||
@@ -137,9 +137,10 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>04d0755f-27dd-c4ac-2785-08dac1666661</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"eoid":{"Type":"StringType"},"type":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getDirectLinkF4SD(eoid, type)</Name>
|
||||
<RouteTemplate>getDirectLinkF4SD/{eoid}/{type}</RouteTemplate>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"StringType"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"eoid":{"Type":"GuidType","Source":0},"type":{"Type":"StringType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getDirectLinkF4SD(eoid,type)</Name>
|
||||
<RouteTemplate>getDirectLinkF4SD</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
<Service>dcd66369-4933-ed11-1b9c-e3e293f5401c</Service>
|
||||
@@ -137,8 +137,9 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>f977a1d8-f21c-c1bc-4ea0-08dac09d3c99</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"download":{"Type":"StringType"},"count":{"Type":"StringType"},"filter":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getLog(download, count, filter)</Name>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"Matrix42_WebApi_Contracts_IHttpActionResult"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"download":{"Type":"StringType","Source":0},"count":{"Type":"IntType","Source":0},"filter":{"Type":"StringType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getLog(download,count,filter)</Name>
|
||||
<RouteTemplate>log</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
@@ -137,8 +137,9 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>6cec89ab-b843-cd6b-d6b5-08db99ad32ee</ID>
|
||||
<RequestContract>{"UsedTypes":{},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getMyRoleMemberships</Name>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Object"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getMyRoleMemberships()</Name>
|
||||
<RouteTemplate>getMyRoleMemberships</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
|
||||
@@ -137,8 +137,9 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>ef14b892-628c-c1c1-801f-08db99ad32e9</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"name":{"Type":"StringType"},"mode":{"Type":"StringType"},"group":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getPickup(name, mode, group)</Name>
|
||||
<ResponseContract>{"UsedTypes":{"Matrix42_Pandora_Contracts_EntityEnumeration":{"Documentation":"Describes Entity Enumeration","Descriptor":{"Name":{"Documentation":"Technical name of the Enumeration","Type":"StringType"},"Values":{"Documentation":"Enumeration Values","Type":["Matrix42_Pandora_Contracts_EntityEnumerationValue"]}},"DisplayName":"Name"},"Matrix42_Pandora_Contracts_EntityEnumerationValue":{"Documentation":"Represents a single value in Entity Enumeration","Descriptor":{"Value":{"Documentation":"Gets or sets a value","Type":"IntType"},"DisplayString":{"Documentation":"Gets or sets the display string for Enumeration Value","Type":"StringType"},"Hidden":{"Documentation":"Gets or sets a Hidden attribute","Type":"BoolType"},"Extentions":{"Documentation":"Additional pickup value attributes","Type":["StringType"]}}}},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"Matrix42_Pandora_Contracts_EntityEnumeration"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"name":{"Type":"StringType","Source":0},"mode":{"Type":"IntType","Source":0},"group":{"Type":"IntType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getPickup(name,mode,group)</Name>
|
||||
<RouteTemplate>getPickup/{name}</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
|
||||
@@ -137,8 +137,9 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>06747fe1-8113-c51f-4969-08db99ad32f1</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"upn":{"Type":"StringType"},"id":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getRoleMemberships(sid, upn, id)</Name>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Object"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType","Source":0},"upn":{"Type":"StringType","Source":0},"id":{"Type":"GuidType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getRoleMemberships(sid,upn,id)</Name>
|
||||
<RouteTemplate>getRoleMemberships</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
|
||||
@@ -0,0 +1,159 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<NewDataSet>
|
||||
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
|
||||
<xs:complexType>
|
||||
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:element name="PLSLWebServiceOperation">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="ResponseContract" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="RequestContract" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="Name" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="RouteTemplate" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="Documentation" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="TypeID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Service" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="SupportedOperation" type="xs:int" minOccurs="0" />
|
||||
<xs:element name="Type" type="xs:int" minOccurs="0" />
|
||||
<xs:element name="IsPublic" type="xs:unsignedByte" />
|
||||
<xs:element name="DocumentationLink" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="PDRAudienceClass">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTypeDialog" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTypeObjectDetails" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRDataQueryFilterType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Unrestricted" type="xs:unsignedByte" />
|
||||
<xs:element name="Configured" type="xs:unsignedByte" />
|
||||
<xs:element name="UsedInTypePDRActionType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRNavigationItemType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="ConsiderRelated" type="xs:unsignedByte" />
|
||||
<xs:element name="UsedInTypePLSLWebServiceOperationType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePLSLServiceTypeWebAPI" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTemplateViewType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypeSVMEmailSignatureType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="StrictAdminControl" type="xs:unsignedByte" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2PDRAudienceClass">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="InheritedFrom" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="ApplyTo" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSUserClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Users" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSSecurityClassRole">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Roles" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSOrgUnitClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="OUs" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSLocationClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Locations" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:choice>
|
||||
</xs:complexType>
|
||||
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
|
||||
<xs:selector xpath=".//PLSLWebServiceOperation" />
|
||||
<xs:field xpath="ID" />
|
||||
</xs:unique>
|
||||
<xs:unique name="PDRAudienceClass_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
|
||||
<xs:selector xpath=".//PDRAudienceClass" />
|
||||
<xs:field xpath="ID" />
|
||||
</xs:unique>
|
||||
</xs:element>
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>750c8dc4-ada0-c1b0-c877-08da9bbec2e3</ID>
|
||||
<ResponseContract>{"UsedTypes":{"C4IT_FASD_Base_cF4SDTicket":{"Descriptor":{"AffectedUserId":{"Type":"GuidType"},"AssetId":{"Type":"GuidType"},"CreationDate":{"Type":"DateType"},"ClosingDate":{"Type":"DateType"},"CreationSourceId":{"Type":"IntType"},"CreationSource":{"Type":"StringType"},"Description":{"Type":"StringType"},"DescriptionHtml":{"Type":"StringType"},"PriorityId":{"Type":"IntType"},"Priority":{"Type":"StringType"},"CategoryId":{"Type":"GuidType"},"Category":{"Type":"StringType"},"CategoryHierarchical":{"Type":"StringType"},"CIName":{"Type":"StringType"},"DirectLinkEdit":{"Type":"StringType"},"AssetCIId":{"Type":"GuidType"},"AssetSKUAssetGroupId":{"Type":"IntType"},"AssetSKUAssetGroup":{"Type":"StringType"},"AssetSKUTypeId":{"Type":"IntType"},"AssetSKUType":{"Type":"StringType"},"DirectLinkPreview":{"Type":"StringType"},"DirectLinkClose":{"Type":"StringType"},"AffectedUser":{"Type":"StringType"},"SolutionHtml":{"Type":"StringType"},"Solution":{"Type":"StringType"},"AssetDomain":{"Type":"StringType"},"TicketObjectId":{"Type":"GuidType"},"Name":{"Type":"StringType"},"ActivityType":{"Type":"StringType"},"Summary":{"Type":"StringType"},"Sid":{"Type":"StringType"},"Status":{"Type":"StringType"},"StatusId":{"Type":"IntType"},"Urgency":{"Type":"StringType"},"UrgencyId":{"Type":"IntType"},"Impact":{"Type":"StringType"},"ImpactId":{"Type":"IntType"},"AssetCIName":{"Type":"StringType"},"AssetName":{"Type":"StringType"},"ServiceName":{"Type":"StringType"},"ServiceId":{"Type":"GuidType"},"IsPrimaryAccount":{"Type":"BoolType"}},"DisplayName":"Name"}},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"C4IT_FASD_Base_cF4SDTicket"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"objectId":{"Type":"GuidType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketDetails(objectId)</Name>
|
||||
<RouteTemplate>getTicketDetails</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
<Service>dcd66369-4933-ed11-1b9c-e3e293f5401c</Service>
|
||||
<SupportedOperation>0</SupportedOperation>
|
||||
<Type>1</Type>
|
||||
<IsPublic>0</IsPublic>
|
||||
</PLSLWebServiceOperation>
|
||||
<PDRAudienceClass>
|
||||
<ID>336febdb-9a39-ed11-209c-b0c4b3911a8e</ID>
|
||||
<Unrestricted>1</Unrestricted>
|
||||
<Configured>1</Configured>
|
||||
<ConsiderRelated>0</ConsiderRelated>
|
||||
<UsedInTypePLSLWebServiceOperationType>750c8dc4-ada0-c1b0-c877-08da9bbec2e3</UsedInTypePLSLWebServiceOperationType>
|
||||
<StrictAdminControl>0</StrictAdminControl>
|
||||
</PDRAudienceClass>
|
||||
</NewDataSet>
|
||||
@@ -137,7 +137,8 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>94d0317f-a8db-caf0-a353-08da9bbec2dc</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"objectId":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Collections_Generic_List`1[C4IT_FASD_Base_cF4SDTicket+cTicketJournalItem]"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"objectId":{"Type":"GuidType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketHistory(objectId)</Name>
|
||||
<RouteTemplate>getTicketHistory</RouteTemplate>
|
||||
<Documentation />
|
||||
@@ -137,9 +137,10 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>163e04c2-8b5c-c0e6-0535-08da9bbec2df</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"hours":{"Type":"StringType"},"queueoption":{"Type":"StringType"},"queues":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketList(sid, hours, queueoption, queues)</Name>
|
||||
<RouteTemplate>getTicketList/{sid}/{hours}/{queueoption}/{queues}</RouteTemplate>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Collections_Generic_List`1[C4IT_FASD_Base_cF4SDTicketSummary]"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType","Source":0},"hours":{"Type":"IntType","Source":0},"queueoption":{"Type":"IntType","Source":0},"queues":{"Type":"StringType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketList(sid,hours,queueoption,queues)</Name>
|
||||
<RouteTemplate>getTicketList</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
<Service>dcd66369-4933-ed11-1b9c-e3e293f5401c</Service>
|
||||
@@ -0,0 +1,159 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<NewDataSet>
|
||||
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
|
||||
<xs:complexType>
|
||||
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:element name="PLSLWebServiceOperation">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="ResponseContract" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="RequestContract" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="Name" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="RouteTemplate" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="Documentation" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="TypeID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Service" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="SupportedOperation" type="xs:int" minOccurs="0" />
|
||||
<xs:element name="Type" type="xs:int" minOccurs="0" />
|
||||
<xs:element name="IsPublic" type="xs:unsignedByte" />
|
||||
<xs:element name="DocumentationLink" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="PDRAudienceClass">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTypeDialog" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTypeObjectDetails" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRDataQueryFilterType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Unrestricted" type="xs:unsignedByte" />
|
||||
<xs:element name="Configured" type="xs:unsignedByte" />
|
||||
<xs:element name="UsedInTypePDRActionType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRNavigationItemType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="ConsiderRelated" type="xs:unsignedByte" />
|
||||
<xs:element name="UsedInTypePLSLWebServiceOperationType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePLSLServiceTypeWebAPI" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTemplateViewType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypeSVMEmailSignatureType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="StrictAdminControl" type="xs:unsignedByte" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2PDRAudienceClass">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="InheritedFrom" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="ApplyTo" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSUserClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Users" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSSecurityClassRole">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Roles" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSOrgUnitClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="OUs" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSLocationClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Locations" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:choice>
|
||||
</xs:complexType>
|
||||
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
|
||||
<xs:selector xpath=".//PLSLWebServiceOperation" />
|
||||
<xs:field xpath="ID" />
|
||||
</xs:unique>
|
||||
<xs:unique name="PDRAudienceClass_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
|
||||
<xs:selector xpath=".//PDRAudienceClass" />
|
||||
<xs:field xpath="ID" />
|
||||
</xs:unique>
|
||||
</xs:element>
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>99eef84e-a303-c248-36c5-08ded882fc6c</ID>
|
||||
<ResponseContract>{"UsedTypes":{"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsResult":{"Descriptor":{"Counts":{"Type":["StringType"]}}}},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsResult"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType","Source":0},"scope":{"Type":"StringType","Source":0},"keys":{"Type":"StringType","Source":0},"queueoption":{"Type":"IntType","Source":0},"queues":{"Type":"StringType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketOverviewCounts(sid,scope,keys,queueoption,queues)</Name>
|
||||
<RouteTemplate>getTicketOverviewCounts</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
<Service>dcd66369-4933-ed11-1b9c-e3e293f5401c</Service>
|
||||
<SupportedOperation>0</SupportedOperation>
|
||||
<Type>1</Type>
|
||||
<IsPublic>0</IsPublic>
|
||||
</PLSLWebServiceOperation>
|
||||
<PDRAudienceClass>
|
||||
<ID>82d8de08-6cfc-1483-6bfa-da4b9403a82d</ID>
|
||||
<Unrestricted>1</Unrestricted>
|
||||
<Configured>1</Configured>
|
||||
<ConsiderRelated>0</ConsiderRelated>
|
||||
<UsedInTypePLSLWebServiceOperationType>99eef84e-a303-c248-36c5-08ded882fc6c</UsedInTypePLSLWebServiceOperationType>
|
||||
<StrictAdminControl>0</StrictAdminControl>
|
||||
</PDRAudienceClass>
|
||||
</NewDataSet>
|
||||
@@ -0,0 +1,159 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<NewDataSet>
|
||||
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
|
||||
<xs:complexType>
|
||||
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:element name="PLSLWebServiceOperation">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="ResponseContract" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="RequestContract" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="Name" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="RouteTemplate" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="Documentation" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="2147483647" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
<xs:element name="TypeID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Service" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="SupportedOperation" type="xs:int" minOccurs="0" />
|
||||
<xs:element name="Type" type="xs:int" minOccurs="0" />
|
||||
<xs:element name="IsPublic" type="xs:unsignedByte" />
|
||||
<xs:element name="DocumentationLink" minOccurs="0">
|
||||
<xs:simpleType>
|
||||
<xs:restriction base="xs:string">
|
||||
<xs:maxLength value="1000" />
|
||||
</xs:restriction>
|
||||
</xs:simpleType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="PDRAudienceClass">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTypeDialog" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTypeObjectDetails" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRDataQueryFilterType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Unrestricted" type="xs:unsignedByte" />
|
||||
<xs:element name="Configured" type="xs:unsignedByte" />
|
||||
<xs:element name="UsedInTypePDRActionType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRNavigationItemType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="ConsiderRelated" type="xs:unsignedByte" />
|
||||
<xs:element name="UsedInTypePLSLWebServiceOperationType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePLSLServiceTypeWebAPI" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypePDRContentWidgetTemplateViewType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="UsedInTypeSVMEmailSignatureType" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="StrictAdminControl" type="xs:unsignedByte" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2PDRAudienceClass">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="InheritedFrom" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="ApplyTo" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSUserClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Users" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSSecurityClassRole">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Roles" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSOrgUnitClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="OUs" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="SchemaRelation-PDRAudienceClass2SPSLocationClassBase">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="ID" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Audiences" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
<xs:element name="Locations" msdata:DataType="System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:string" minOccurs="0" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:choice>
|
||||
</xs:complexType>
|
||||
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
|
||||
<xs:selector xpath=".//PLSLWebServiceOperation" />
|
||||
<xs:field xpath="ID" />
|
||||
</xs:unique>
|
||||
<xs:unique name="PDRAudienceClass_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
|
||||
<xs:selector xpath=".//PDRAudienceClass" />
|
||||
<xs:field xpath="ID" />
|
||||
</xs:unique>
|
||||
</xs:element>
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>290c8d51-b8d4-ce74-50c5-08ded882fc72</ID>
|
||||
<ResponseContract>{"UsedTypes":{"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsByRoleResult":{"Descriptor":{"GeneratedAtUtc":{"Type":"DateType"},"CountsByRole":{"Type":["StringType"]}}}},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsByRoleResult"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"request":{"Type":"C4IT_F4SD_F4SDM42WebApiController+TicketOverviewCountsByRolesRequest","Source":1}}},"C4IT_F4SD_F4SDM42WebApiController+TicketOverviewCountsByRolesRequest":{"Descriptor":{"Sid":{"Type":"StringType"},"RoleGuids":{"Type":["GuidType"]},"Keys":{"Type":["StringType"]},"QueueOption":{"Type":"IntType"},"Queues":{"Type":"StringType"}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketOverviewCountsByRoles(request)</Name>
|
||||
<RouteTemplate>getTicketOverviewCountsByRoles</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
<Service>dcd66369-4933-ed11-1b9c-e3e293f5401c</Service>
|
||||
<SupportedOperation>16</SupportedOperation>
|
||||
<Type>2</Type>
|
||||
<IsPublic>0</IsPublic>
|
||||
</PLSLWebServiceOperation>
|
||||
<PDRAudienceClass>
|
||||
<ID>82d8de08-72fc-4476-6bfa-da4b9403a848</ID>
|
||||
<Unrestricted>1</Unrestricted>
|
||||
<Configured>1</Configured>
|
||||
<ConsiderRelated>0</ConsiderRelated>
|
||||
<UsedInTypePLSLWebServiceOperationType>290c8d51-b8d4-ce74-50c5-08ded882fc72</UsedInTypePLSLWebServiceOperationType>
|
||||
<StrictAdminControl>0</StrictAdminControl>
|
||||
</PDRAudienceClass>
|
||||
</NewDataSet>
|
||||
@@ -136,10 +136,11 @@
|
||||
</xs:element>
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>750c8dc4-ada0-c1b0-c877-08da9bbec2e3</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"objectId":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketDetails(objectId)</Name>
|
||||
<RouteTemplate>getTicketDetails</RouteTemplate>
|
||||
<ID>c5dd653a-54d8-c430-c9df-08ded882fc79</ID>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Collections_Generic_List`1[C4IT_F4SD_F4SDHelperService+TicketOverviewRelationDto]"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType","Source":0},"scope":{"Type":"StringType","Source":0},"key":{"Type":"StringType","Source":0},"count":{"Type":"IntType","Source":0},"queueoption":{"Type":"IntType","Source":0},"queues":{"Type":"StringType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>getTicketOverviewRelations(sid,scope,key,count,queueoption,queues)</Name>
|
||||
<RouteTemplate>getTicketOverviewRelations</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
<Service>dcd66369-4933-ed11-1b9c-e3e293f5401c</Service>
|
||||
@@ -148,11 +149,11 @@
|
||||
<IsPublic>0</IsPublic>
|
||||
</PLSLWebServiceOperation>
|
||||
<PDRAudienceClass>
|
||||
<ID>336febdb-9a39-ed11-209c-b0c4b3911a8e</ID>
|
||||
<ID>82d8de08-7afc-f13f-6bfa-da4b9403a863</ID>
|
||||
<Unrestricted>1</Unrestricted>
|
||||
<Configured>1</Configured>
|
||||
<ConsiderRelated>0</ConsiderRelated>
|
||||
<UsedInTypePLSLWebServiceOperationType>750c8dc4-ada0-c1b0-c877-08da9bbec2e3</UsedInTypePLSLWebServiceOperationType>
|
||||
<UsedInTypePLSLWebServiceOperationType>c5dd653a-54d8-c430-c9df-08ded882fc79</UsedInTypePLSLWebServiceOperationType>
|
||||
<StrictAdminControl>0</StrictAdminControl>
|
||||
</PDRAudienceClass>
|
||||
</NewDataSet>
|
||||
@@ -137,8 +137,9 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>9df9d16f-1a00-cc19-1727-08dac09d3c08</ID>
|
||||
<RequestContract>{"UsedTypes":{},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>isAlive</Name>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"Matrix42_WebApi_Contracts_IHttpActionResult"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>isAlive()</Name>
|
||||
<RouteTemplate>isAlive</RouteTemplate>
|
||||
<Documentation />
|
||||
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>
|
||||
@@ -137,7 +137,8 @@
|
||||
</xs:schema>
|
||||
<PLSLWebServiceOperation>
|
||||
<ID>14366b3c-b79d-cfe3-ded3-08da9bbec2d7</ID>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"debug":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
|
||||
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"StringType"}}</ResponseContract>
|
||||
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"debug":{"Type":"StringType","Source":0}}}},"ContractDescriptor":{"Type":"RequestContract"}}</RequestContract>
|
||||
<Name>setDebugMode(debug)</Name>
|
||||
<RouteTemplate>loglevel</RouteTemplate>
|
||||
<Documentation />
|
||||
@@ -12,7 +12,7 @@
|
||||
"SetupDirectives": {
|
||||
"MaintenanceMode": false,
|
||||
"RecycleWebApplication": false,
|
||||
"RestartM42WindowsServices": false
|
||||
"RestartM42WindowsServices": true
|
||||
},
|
||||
"Sandboxed": true
|
||||
}
|
||||
|
||||
@@ -108,6 +108,28 @@ Beim Portieren eines Legacy-Pakets:
|
||||
3. Extension-/Assembly-ID beibehalten, wenn ein Update statt einer Neuinstallation gewollt ist.
|
||||
4. Operation-IDs nur dann aendern, wenn bewusst neue Operationen entstehen sollen.
|
||||
5. Obsolete oder entfernte Schema-Attribute aus 26.1 entfernen.
|
||||
6. Nach der ersten lauffaehigen Version die Webservice-Operationen in Matrix42 synchronisieren, exportieren und die synchronisierten Contracts in die Paketdateien mergen.
|
||||
|
||||
Wichtiges finales Learning zu Webservice-Operationen:
|
||||
|
||||
- Wenn ein Endpoint nur nach "Service synchronisieren" korrekt funktioniert, sind die `PLSLWebServiceOperation`-Contracts im Paket nicht mehr synchron zum Controller.
|
||||
- Die synchronisierten Operationen exportieren und mit den bestehenden Paketdateien mergen.
|
||||
- Bestehende `PLSLWebServiceOperation.ID`s nicht durch Export-IDs ersetzen, sonst entstehen auf Bestandssystemen doppelte Operationen.
|
||||
- Bestehende `PDRAudienceClass.ID`s ebenfalls erhalten.
|
||||
- Nur fachliche Operation-Felder uebernehmen: `ResponseContract`, `RequestContract`, `Name`, `RouteTemplate`, `SupportedOperation`, `Type`, `IsPublic`.
|
||||
- Neue Operationen, die bisher nicht im Paket vorhanden waren, duerfen die exportierten IDs verwenden, wenn sie aus dem Zielsystem stammen, auf dem sie bereits synchronisiert wurden.
|
||||
- Operation-Dateien nach Operation benennen, z. B. `getticketlist.dat`, `getpickup.dat`, `isalive.dat`. Das erleichtert Reviews und verhindert Verwechslungen mit generischen `02-01-xxxx PLSLWebServiceOperationType.dat`-Dateien.
|
||||
- Jede Datei aus `PackageTemplate/install/0002_WebServiceOperation` muss in `PackageTemplate/install.xml` referenziert sein.
|
||||
|
||||
Validierung:
|
||||
|
||||
```powershell
|
||||
# XML parsebar?
|
||||
python -c "import pathlib,xml.etree.ElementTree as ET; [ET.parse(p) for p in pathlib.Path('PackageTemplate/install/0002_WebServiceOperation').glob('*.dat')]"
|
||||
|
||||
# Debug-Paket bauen und pruefen, ob alle Operation-Dateien im Paket liegen
|
||||
dotnet build "C:\Workspace\C4IT FASD\F4SD_M42WebApi\C4IT - F4SD - M42WebApi.sln" -c Debug
|
||||
```
|
||||
|
||||
Konkretes 26.1-Learning:
|
||||
|
||||
@@ -224,7 +246,7 @@ Bewaehrt:
|
||||
|
||||
- Datenendpoints geben direkte Nutzdaten zurueck, z. B. `Task<List<T>>`, `Task<object>` oder `Task<EntityEnumeration>`.
|
||||
- Leere Listen duerfen nicht `null` sein.
|
||||
- `isAlive` gibt `IHttpActionResult` mit `StatusCodeResult(HttpStatusCode.NoContent)` zurueck.
|
||||
- `isAlive` gibt `IHttpActionResult` mit einem expliziten HTTP-204-Response zurueck.
|
||||
|
||||
Healthcheck:
|
||||
|
||||
@@ -232,7 +254,13 @@ Healthcheck:
|
||||
[Route("isAlive"), HttpGet]
|
||||
public IHttpActionResult isAlive()
|
||||
{
|
||||
return new StatusCodeResult(HttpStatusCode.NoContent);
|
||||
var response = new HttpResponseMessage(HttpStatusCode.NoContent)
|
||||
{
|
||||
RequestMessage = Request
|
||||
};
|
||||
response.Headers.ConnectionClose = true;
|
||||
|
||||
return ResponseMessage(response);
|
||||
}
|
||||
```
|
||||
|
||||
@@ -266,28 +294,63 @@ Regel:
|
||||
|
||||
## Routen und Parameterbindung
|
||||
|
||||
Wichtiges spaetes Learning: Der Matrix42 `m42Services`-Gateway kann Query-Parameter auch dann an die Methode binden, wenn die Controller-Route path-basierte Platzhalter hat.
|
||||
Finales Learning: Fuer Legacy-Kompatibilitaet muessen Route, `PLSLWebServiceOperation.RouteTemplate`, `[FromUri]` und die alten Client-URLs zusammen betrachtet werden.
|
||||
|
||||
Beispiel im Code:
|
||||
Bewaehrte Regeln:
|
||||
|
||||
- Die Route-Attribute aus der funktionierenden Legacy-Version uebernehmen.
|
||||
- Query-basierte Legacy-Endpoints bleiben query-basiert, z. B. `[Route("getTicketList")]`.
|
||||
- Path-basierte Legacy-Endpoints bleiben path-basiert, z. B. `[Route("getPickup/{name}")]`.
|
||||
- GET-Parameter mit `[FromUri]` markieren.
|
||||
- Zusaetzlich einen kleinen zentralen Query-Fallback verwenden, weil in 26.1 einzelne optionale Queryparameter trotz `[FromUri]` nicht immer in der Methode ankamen.
|
||||
- Keine doppelten Controller-Methoden fuer alte und neue URL-Formen bauen.
|
||||
- Die Postman-Collection testet bewusst die alten Client-URLs.
|
||||
|
||||
Beispiel Query-Route:
|
||||
|
||||
```csharp
|
||||
[Route("getDirectLinkF4SD/{eoid}/{type}"), HttpGet]
|
||||
public async Task<string> getDirectLinkF4SD(Guid eoid, string type)
|
||||
[Route("getDirectLinkCreateTicket"), HttpGet]
|
||||
public async Task<DirectLink> getDirectLinkCreateTicket(
|
||||
[FromUri] string sid = "",
|
||||
[FromUri] string assetname = "")
|
||||
{
|
||||
sid = QueryValue(sid, nameof(sid));
|
||||
assetname = QueryValue(assetname, nameof(assetname));
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
Funktionierende Legacy-URL:
|
||||
Beispiel Path-Route mit zusaetzlichen Queryparametern:
|
||||
|
||||
```text
|
||||
/m42Services/api/c4itf4sdwebapi/getdirectlinkf4sd/?eoid=<guid>&type=user
|
||||
```csharp
|
||||
[Route("getPickup/{name}"), HttpGet]
|
||||
public async Task<EntityEnumeration> getPickup(
|
||||
[FromUri] string name,
|
||||
[FromUri] EntityEnumerationVisibilityMode mode = EntityEnumerationVisibilityMode.None,
|
||||
[FromUri] int group = -1)
|
||||
{
|
||||
name = QueryValue(name, nameof(name));
|
||||
mode = QueryValue(mode, nameof(mode));
|
||||
group = QueryValue(group, nameof(group));
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
Daraus folgt fuer diese Migration:
|
||||
Der zentrale Query-Fallback ist bewusst klein und verwendet die strukturierte WebAPI-API statt eigenes URL-Parsen:
|
||||
|
||||
- Controller nicht doppeln.
|
||||
- Keine Query-Helper einbauen.
|
||||
- Kein `[FromUri]` als Rettungsversuch verwenden, wenn das Matrix42-Binding ohnehin funktioniert.
|
||||
- Die Postman-Collection testet bewusst die alten Query-Routen, damit Client-Kompatibilitaet erhalten bleibt.
|
||||
- `PLSLWebServiceOperation.RouteTemplate` darf path-basiert sein, die alten Query-Aufrufe muessen trotzdem getestet werden.
|
||||
```csharp
|
||||
private string GetQueryValue(string name)
|
||||
{
|
||||
return Request?.GetQueryNameValuePairs()
|
||||
.FirstOrDefault(pair => string.Equals(pair.Key, name, StringComparison.OrdinalIgnoreCase))
|
||||
.Value;
|
||||
}
|
||||
|
||||
private string QueryValue(string value, string name)
|
||||
{
|
||||
return GetQueryValue(name) ?? value ?? string.Empty;
|
||||
}
|
||||
```
|
||||
|
||||
Betroffene alte Testformate:
|
||||
|
||||
@@ -295,6 +358,7 @@ Betroffene alte Testformate:
|
||||
getTicketList?sid=...&hours=...&queueoption=...&queues=...
|
||||
getDirectLinkCreateTicket?sid=...&assetname=...
|
||||
getDirectLinkF4SD?eoid=...&type=...
|
||||
getPickup/<name>?mode=...&group=...
|
||||
```
|
||||
|
||||
## Pickups und Enumerations
|
||||
@@ -452,7 +516,7 @@ Ein `HttpResponseMessage` wurde als DTO serialisiert. Rueckgabe auf direkten Nut
|
||||
{"result":null,"parameters":{}}
|
||||
```
|
||||
|
||||
Void-Endpoint oder falsch behandelte leere Rueckgabe. Fuer NoContent `StatusCodeResult(HttpStatusCode.NoContent)` nutzen.
|
||||
Void-Endpoint oder falsch behandelte leere Rueckgabe. Fuer NoContent einen `IHttpActionResult` mit HTTP 204 liefern.
|
||||
|
||||
```text
|
||||
Method <name> returned null
|
||||
@@ -468,7 +532,7 @@ Diese Ansaetze haben nicht nachhaltig geholfen und sollen nicht erneut aufgebaut
|
||||
- Immer mehr Module auf Vorrat laden, ohne die konkrete fehlende Registrierung zu kennen.
|
||||
- `HttpResponseMessage` als Datenantwort verwenden.
|
||||
- Query-Parameter per eigenem Helper aus `RequestUri` lesen.
|
||||
- `[FromUri]` pauschal an alle GET-Parameter setzen.
|
||||
- Doppelte Controller-Methoden fuer alte Query-URLs und neue Path-URLs bauen.
|
||||
- `JournalService` direkt konstruieren.
|
||||
- NoOp-/Proxy-Abhaengigkeiten fuer Journal-Services erzeugen.
|
||||
- Journal-Historie aus unvollstaendigen Kommentarfeldern nachbauen.
|
||||
@@ -486,12 +550,17 @@ Diese Ansaetze haben nicht nachhaltig geholfen und sollen nicht erneut aufgebaut
|
||||
8. AssemblyVersion als einzige Package-Versionsquelle verwenden.
|
||||
9. WebAPI-Rueckgaben auf direkte DTOs/Listen umstellen.
|
||||
10. `isAlive` auf echten 204 umstellen.
|
||||
11. Pickups zuerst ueber schlanke Services loesen.
|
||||
12. Komplexe Matrix42-Services erst bei Bedarf laden.
|
||||
13. Bei Unity-Fehlern konkrete Implementierung/Registrator suchen.
|
||||
14. Postman-Collection fuer alte Client-Routen aufbauen.
|
||||
15. Paket installieren, Service synchronisieren und Smoke-Tests ausfuehren.
|
||||
16. Erst nach erfolgreicher Kompatibilitaet fachliche Weiterentwicklungen einbringen.
|
||||
11. Controller-Routen aus der funktionierenden Legacy-Version uebernehmen.
|
||||
12. GET-Parameter mit `[FromUri]` versehen und fehlende Querywerte zentral ueber `Request.GetQueryNameValuePairs()` nachziehen.
|
||||
13. Pickups zuerst ueber schlanke Services loesen.
|
||||
14. Komplexe Matrix42-Services erst bei Bedarf laden.
|
||||
15. Bei Unity-Fehlern konkrete Implementierung/Registrator suchen.
|
||||
16. Webservice-Operationen nach erfolgreicher Installation in Matrix42 synchronisieren.
|
||||
17. Synchronisierte Operationen exportieren und in die Paketdateien mergen, ohne bestehende IDs zu ersetzen.
|
||||
18. Operation-Dateien sprechend nach Operation benennen und in `install.xml` referenzieren.
|
||||
19. Postman-Collection fuer alte Client-Routen aufbauen.
|
||||
20. Paket installieren, Service synchronisieren und Smoke-Tests ausfuehren.
|
||||
21. Erst nach erfolgreicher Kompatibilitaet fachliche Weiterentwicklungen einbringen.
|
||||
|
||||
## Git- und Datei-Hinweise
|
||||
|
||||
|
||||
Reference in New Issue
Block a user