package com.rssuper.services import okhttp3.CacheControl import okhttp3.Response data class FetchResult( val feedXml: String, val url: String, val cacheControl: CacheControl?, val isCached: Boolean, val etag: String? = null, val lastModified: String? = null ) { companion object { fun fromResponse(response: Response, url: String, isCached: Boolean = false): FetchResult { val body = response.body?.string() ?: "" val cacheControl = response.cacheControl val etag = response.header("ETag") val lastModified = response.header("Last-Modified") return FetchResult( feedXml = body, url = url, cacheControl = cacheControl, isCached = isCached, etag = etag, lastModified = lastModified ) } } }