Coder Social home page Coder Social logo

hardyharhar's Introduction

HardyHarHar

A Kotlin library to create HAR network log files.

Install

implementation 'com.github.homespotter:hardyharhar:LATEST_RELEASE'

Usage

private val entries = mutableListOf<HarEntry>()

fun addEntry() {
    val harRequest: HarRequest = HarRequest(
            method = "GET",
            url = "http://example.com",
            httpVersion = "HTTP/1.1",
    )

    val harResponse: HarResponse = HarResponse(
            status = 200,
            statusText = "OK",
            httpVersion = "HTTP/1.1",
    )

    entries.add(HarEntry(
            request = harRequest,
            response = harResponse,
            startedDateTime = Date(),
            time = 200 // duration of network request in ms,
    ))
}

fun writeHarFile() {
    val file = File("treasure_map.har")
    DefaultHarWriter().writeHarLogToFile(HarLog(entries = entries), file)
}

Proguard

You may need to add the following to your proguard-rules.pro

-keepattributes *Annotation*, InnerClasses
-dontnote kotlinx.serialization.SerializationKt
-keep,includedescriptorclasses class dev.percula.hardyharhar.**$$serializer { *; }
-keepclassmembers class dev.percula.hardyharhar.** {
    *** Companion;
}
-keepclasseswithmembers class dev.percula.hardyharhar.** {
    kotlinx.serialization.KSerializer serializer(...);
}

Credits

HardyHarHar is based on Har-Java

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.