separate property

({List<ClientParam> body, List<ClientParam> cookies, List<ClientParam> headers, List<ClientParam> query}) get separate

Implementation

({
  List<ClientParam> body,
  List<ClientParam> query,
  List<ClientParam> headers,
  List<ClientParam> cookies,
})
get separate {
  final cookieParams = <ClientParam>[];
  final queryParams = <ClientParam>[];
  final bodyParams = <ClientParam>[];
  final headerParams = <ClientParam>[];

  for (final param in this) {
    switch (param.position) {
      case ParameterPosition.cookie:
        cookieParams.add(param);
      case ParameterPosition.query:
        queryParams.add(param);
      case ParameterPosition.body:
        bodyParams.add(param);
      case ParameterPosition.header:
        headerParams.add(param);
    }
  }

  return (
    cookies: cookieParams,
    body: bodyParams,
    query: queryParams,
    headers: headerParams,
  );
}