diff --git a/README.md b/README.md index 5e37ddb..5abca9f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.github.cowwoc.pouch/core/badge.svg)](https://search.maven.org/search?q=g:com.github.cowwoc.pouch) [![API](https://img.shields.io/badge/api_docs-5B45D5.svg)](http://cowwoc.github.io/pouch/6.0/docs/api/) [![Changelog](https://img.shields.io/badge/changelog-A345D5.svg)](docs/changelog.md) +[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.github.cowwoc.pouch/core/badge.svg)](https://search.maven.org/search?q=g:com.github.cowwoc.pouch) [![API](https://img.shields.io/badge/api_docs-5B45D5.svg)](http://cowwoc.github.io/pouch/6.1/docs/api/) [![Changelog](https://img.shields.io/badge/changelog-A345D5.svg)](docs/changelog.md) [![build-status](../../workflows/Build/badge.svg)](../../actions?query=workflow%3Abuild) # pouch Pouch: Inversion of Control for the Masses @@ -20,7 +20,7 @@ To get started, add this Maven dependency: com.github.cowwoc.pouch core - 6.0 + 6.1 ``` @@ -140,7 +140,7 @@ For example, notice how `AbstractDatabaseScope.getRunMode()` delegates to `JvmSc When running in a multithreaded environment, such as a web server, you might want to wait for ongoing HTTP requests to complete before shutting down the server. You can use the -[ConcurrentChildScopes](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/ConcurrentChildScopes.html) +[ConcurrentChildScopes](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/ConcurrentChildScopes.html) class to implement this as follows: ```java @@ -580,9 +580,9 @@ The scope approach makes it easier to look up multiple values, or pass the scope The library contains two types of classes: ones that are thread-safe and ones that are not. For example, -[ConcurrentLazyFactory](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/ConcurrentLazyFactory.html) +[ConcurrentLazyFactory](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/ConcurrentLazyFactory.html) is the thread-safe equivalent -of [LazyFactory](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyFactory.html). +of [LazyFactory](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyFactory.html). `LazyFactory` is faster than `ConcurrentLazyFactory`, but doesn't support access from multiple threads. Classes that are required to support multithreaded access (such as the application scope) must use the thread-safe classes. diff --git a/docs/frequently_asked_questions.md b/docs/frequently_asked_questions.md index fe4e591..77c2475 100644 --- a/docs/frequently_asked_questions.md +++ b/docs/frequently_asked_questions.md @@ -156,12 +156,12 @@ Ease of use and substantially reduced size. Guava provides comparable functionality: -* [Reference](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/Reference.html) <-> +* [Reference](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/Reference.html) <-> [Supplier](https://guava.dev/releases/32.1.1-jre/api/docs/com/google/common/base/Supplier.html) -* [ConstantReference](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/ConstantReference.html) +* [ConstantReference](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/ConstantReference.html) <-> [Suppliers.ofInstance()](https://guava.dev/releases/32.1.1-jre/api/docs/com/google/common/base/Suppliers.html#ofInstance-T-) -* [LazyReference](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyReference.html) <-> +* [LazyReference](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyReference.html) <-> [Suppliers.memoize()](https://guava.dev/releases/32.1.1-jre/api/docs/com/google/common/base/Suppliers.html#memoize-com.google.common.base.Supplier-) While it is true @@ -175,12 +175,12 @@ For example: 1. [Suppliers.memoize()](https://guava.dev/releases/32.1.1-jre/api/docs/com/google/common/base/Suppliers.html#memoize-com.google.common.base.Supplier-) doesn't provide a mechanism for checking whether the underlying value has been initialized. This is important because, when implementing - [Factory.close()](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/Factory.html#close()), + [Factory.close()](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/Factory.html#close()), you'll want to avoid initializing values that have never been initialized before. 2. This library provides convenience classes such as - [LazyFactory](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyFactory.html) + [LazyFactory](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyFactory.html) which unifies classes - [LazyReference](https://cowwoc.github.io/pouch/6.0/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyReference.html) + [LazyReference](https://cowwoc.github.io/pouch/6.1/docs/api/com.github.cowwoc.pouch.core/com/github/cowwoc/pouch/core/LazyReference.html) and [Closeable](http://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html) into a single class. The size of the Guava library is 2.8MB.