{"id":15351133,"url":"https://github.com/realityforge/gwt-cache-filter","last_synced_at":"2025-04-14T07:08:12.052Z","repository":{"id":9323474,"uuid":"11167679","full_name":"realityforge/gwt-cache-filter","owner":"realityforge","description":null,"archived":false,"fork":false,"pushed_at":"2024-05-17T00:51:44.000Z","size":184,"stargazers_count":34,"open_issues_count":0,"forks_count":5,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-14T07:08:07.500Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/realityforge.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-07-04T05:22:19.000Z","updated_at":"2025-04-11T01:05:36.000Z","dependencies_parsed_at":"2024-01-18T07:50:17.957Z","dependency_job_id":"92d48f0e-a40b-4746-852b-3daac84abb0b","html_url":"https://github.com/realityforge/gwt-cache-filter","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realityforge%2Fgwt-cache-filter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realityforge%2Fgwt-cache-filter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realityforge%2Fgwt-cache-filter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realityforge%2Fgwt-cache-filter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/realityforge","download_url":"https://codeload.github.com/realityforge/gwt-cache-filter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248837280,"owners_count":21169374,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-01T12:01:40.456Z","updated_at":"2025-04-14T07:08:12.028Z","avatar_url":"https://github.com/realityforge.png","language":"Ruby","funding_links":[],"categories":["Caching Library"],"sub_categories":[],"readme":"# gwt-cache-filter\n\n[![Build Status](https://api.travis-ci.com/realityforge/gwt-cache-filter.svg?branch=master)](http://travis-ci.com/realityforge/gwt-cache-filter)\n[\u003cimg src=\"https://img.shields.io/maven-central/v/org.realityforge.gwt.cache-filter/gwt-cache-filter.svg?label=latest%20release\"/\u003e](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.realityforge.gwt.cache-filter%22%20a%3A%22gwt-cache-filter%22)\n\nThe project consists of two filters. The `GWTCacheControlFilter` adds the appropriate\ncaching attributes to GWT generated files based on *.cache.* and *.nocache.* naming\npatterns. The `PreEncodedGzipFilter` will serve a gzipped variant of a static file\nif one is present on the file system and the request specifies the \"Accept-Encoding\"\nhttp header to include \"gzip\". The gzipped variant of the static file should exist\non the file system with the same name as the resource but with \".gz\" suffix.\n\n## Quick Start\n\nThe simplest way to use the library is to add the following dependency\ninto the build system. i.e.\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.realityforge.gwt.cache-filter\u003c/groupId\u003e\n    \u003cartifactId\u003egwt-cache-filter\u003c/artifactId\u003e\n    \u003cversion\u003e0.9\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\nThis will apply a filter across your entire application. Almost always you will want\nto restrict the filter so that it only covers the gwt part of the application in which\ncase you should add the following snippet to web.xml;\n\n```xml\n  \u003cfilter\u003e\n    \u003cfilter-name\u003eGWTCacheControlFilter\u003c/filter-name\u003e\n    \u003cfilter-class\u003eorg.realityforge.gwt.cache_filter.GWTCacheControlFilter\u003c/filter-class\u003e\n  \u003c/filter\u003e\n  \u003cfilter\u003e\n    \u003cfilter-name\u003ePreEncodedGzipFilter\u003c/filter-name\u003e\n    \u003cfilter-class\u003eorg.realityforge.gwt.cache_filter.PreEncodedGzipFilter\u003c/filter-class\u003e\n  \u003c/filter\u003e\n  \u003cfilter-mapping\u003e\n    \u003cfilter-name\u003eGWTCacheControlFilter\u003c/filter-name\u003e\n    \u003curl-pattern\u003e/example/*\u003c/url-pattern\u003e\n  \u003c/filter-mapping\u003e\n  \u003cfilter-mapping\u003e\n    \u003cfilter-name\u003ePreEncodedGzipFilter\u003c/filter-name\u003e\n    \u003curl-pattern\u003e/example/*\u003c/url-pattern\u003e\n  \u003c/filter-mapping\u003e\n```\n\nTo get the GWT compiler to generate the gzipped files for you, the easiest way is to add\nthe following inherits to the \".gwt.xml\" file.\n\n```xml\n  \u003cinherits name=\"com.google.gwt.precompress.Precompress\"/\u003e\n```\n\nA very simple example of this code is available in the `example` directory.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frealityforge%2Fgwt-cache-filter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frealityforge%2Fgwt-cache-filter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frealityforge%2Fgwt-cache-filter/lists"}