POST,GET | /worker |
---|
import 'package:servicestack/servicestack.dart';
enum DataProvider
{
Undefined,
SPP,
ERCOT,
MISO,
CAISO,
PJM,
ISONE,
NYISO,
NW,
SW,
SE,
AESO,
IESO,
CENACE,
NONISO,
EIA,
PNM,
NREL,
NOAA,
ENTSOE,
EPIAS,
SELF,
}
enum PriceMarketType
{
Undefined,
Realtime,
DayAhead,
DART,
}
enum ShadowPriceNodeScoreType
{
Undefined,
DailyAvgStd,
HourlyAvg,
}
class WorkerRequest implements IConvertible
{
DataProvider? provider;
String? key;
DateTime? startDate;
DateTime? endDate;
List<int>? nodeIds;
PriceMarketType? marketType;
ShadowPriceNodeScoreType? scoreType;
WorkerRequest({this.provider,this.key,this.startDate,this.endDate,this.nodeIds,this.marketType,this.scoreType});
WorkerRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
provider = JsonConverters.fromJson(json['provider'],'DataProvider',context!);
key = json['key'];
startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!);
endDate = JsonConverters.fromJson(json['endDate'],'DateTime',context!);
nodeIds = JsonConverters.fromJson(json['nodeIds'],'List<int>',context!);
marketType = JsonConverters.fromJson(json['marketType'],'PriceMarketType',context!);
scoreType = JsonConverters.fromJson(json['scoreType'],'ShadowPriceNodeScoreType',context!);
return this;
}
Map<String, dynamic> toJson() => {
'provider': JsonConverters.toJson(provider,'DataProvider',context!),
'key': key,
'startDate': JsonConverters.toJson(startDate,'DateTime',context!),
'endDate': JsonConverters.toJson(endDate,'DateTime',context!),
'nodeIds': JsonConverters.toJson(nodeIds,'List<int>',context!),
'marketType': JsonConverters.toJson(marketType,'PriceMarketType',context!),
'scoreType': JsonConverters.toJson(scoreType,'ShadowPriceNodeScoreType',context!)
};
getTypeName() => "WorkerRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev_optimization.power.dev', types: <String, TypeInfo> {
'DataProvider': TypeInfo(TypeOf.Enum, enumValues:DataProvider.values),
'PriceMarketType': TypeInfo(TypeOf.Enum, enumValues:PriceMarketType.values),
'ShadowPriceNodeScoreType': TypeInfo(TypeOf.Enum, enumValues:ShadowPriceNodeScoreType.values),
'WorkerRequest': TypeInfo(TypeOf.Class, create:() => WorkerRequest()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /worker HTTP/1.1
Host: dev-optimization.power.dev
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<WorkerRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/powerDev.Optimization.ServiceModel">
<EndDate>0001-01-01T00:00:00</EndDate>
<Key>String</Key>
<MarketType>Undefined</MarketType>
<NodeIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:int>0</d2p1:int>
</NodeIds>
<Provider>Undefined</Provider>
<ScoreType>Undefined</ScoreType>
<StartDate>0001-01-01T00:00:00</StartDate>
</WorkerRequest>