getPostsChildCommentsAWSData method

Future<List<CommentList>> getPostsChildCommentsAWSData(
  1. String resourceId,
  2. String pageNumber,
  3. String parentId
)

Implementation

Future<List<CommentList>> getPostsChildCommentsAWSData(
    final String resourceId,
    final String pageNumber,
    final String parentId) async {
  try {
    const querySize = "25";
    const business = "false";

    final query = {
      "page": pageNumber,
      "size": querySize,
      "parentId": parentId,
      "expandUser": true
    };
    /* final request = client.request("${ApiConfig.commentsGetPath}/$resourceId",
        query: query);

    request.headers.addAll(<String, String>{
      "x-api-key": ApiConfig.apiKey,
      "cdauthtoken": "Bearer ${ApiConfig.idToken}"
    });
    final value = await http.get(request.url, headers: request.headers);*/

    final SharedPreferences prefs = await _prefs;
    final String? userId = prefs.getString(ApiConfig.kcUserId); // To Do
    final String? apiKey = prefs.getString(ApiConfig.kcAPIKey);
    final Dio dio = Dio();
    final value = await dio.get(
      "${ApiConfig.kcCommentsGetPath}/$resourceId",
      options: Options(
        headers: {
          "x-api-key": apiKey,
          "content-type": "application/json",
          "kcuserid": userId
        },
      ),
      queryParameters: {
        "page": pageNumber,
        "size": querySize,
        "parentId": parentId,
        "expandUser": true
      },
    );
    final jsonData = value.data;
    final List<CommentList> feedPostComments = [];
    // ignore: avoid_dynamic_calls
    if (jsonData["_embedded"] != null) {
      // ignore: avoid_dynamic_calls
      for (final feed in jsonData["_embedded"]["commentList"]) {
        // ignore: avoid_dynamic_calls
        final CommentList feedComments =
        CommentList.fromJson(feed as Map<String, dynamic>);
        feedPostComments.add(feedComments);
      }
    }
    return feedPostComments;
  } catch (error) {
    rethrow;
  }
}