Skip to content

Commit f009ff7

Browse files
committed
update readme
1 parent 302c820 commit f009ff7

File tree

7 files changed

+189
-12
lines changed

7 files changed

+189
-12
lines changed

README.md

Lines changed: 72 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,20 @@ $value->getValue(); // de
6262
$value->getAttributes(); // ['q' => '1.0']
6363
```
6464

65+
### AcceptLanguageMiddleware
66+
67+
```php
68+
<?php
69+
70+
use Chubbyphp\Negotiation\Middleware\AcceptLanguageMiddleware;
71+
72+
$request = ...;
73+
$request->withHeader('Accept-Language', 'de,en-US;q=0.7,en;q=0.3');
74+
75+
$middleware = new AcceptLanguageMiddleware($acceptLanguageNegotiator);
76+
$response = $negotiator->process($request, $handler);
77+
```
78+
6579
### AcceptNegotiator
6680

6781
```php
@@ -78,6 +92,20 @@ $value->getValue(); // application/xml
7892
$value->getAttributes(); // ['q' => '0.9']
7993
```
8094

95+
### AcceptMiddleware
96+
97+
```php
98+
<?php
99+
100+
use Chubbyphp\Negotiation\Middleware\AcceptMiddleware;
101+
102+
$request = ...;
103+
$request->withHeader('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q =0.8');
104+
105+
$middleware = new AcceptMiddleware($acceptNegotiator);
106+
$response = $negotiator->process($request, $handler);
107+
```
108+
81109
### ContentTypeNegotiator
82110

83111
```php
@@ -94,6 +122,20 @@ $value->getValue(); // application/xml
94122
$value->getAttributes(); // ['charset' => 'UTF-8']
95123
```
96124

125+
### ContentTypeMiddleware
126+
127+
```php
128+
<?php
129+
130+
use Chubbyphp\Negotiation\Middleware\ContentTypeMiddleware;
131+
132+
$request = ...;
133+
$request->withHeader('Content-Type', 'application/xml; charset=UTF-8');
134+
135+
$middleware = new ContentTypeMiddleware($contentTypeNegotiator);
136+
$response = $negotiator->process($request, $handler);
137+
```
138+
97139
### NegotiationServiceFactory
98140

99141
```php
@@ -111,11 +153,20 @@ $request = ...;
111153
$container->get('negotiator.acceptNegotiator')
112154
->negotiate($request);
113155

156+
$container->get('negotiator.acceptMiddleware')
157+
->process($request, $handler);
158+
114159
$container->get('negotiator.acceptLanguageNegotiator')
115160
->negotiate($request);
116161

162+
$container->get('negotiator.acceptLanguageMiddleware')
163+
->process($request, $handler);
164+
117165
$container->get('negotiator.contentTypeNegotiator')
118166
->negotiate($request);
167+
168+
$container->get('negotiator.contentTypeMiddleware')
169+
->process($request, $handler);
119170
```
120171

121172
### NegotiationServiceProvider
@@ -135,25 +186,40 @@ $request = ...;
135186
$container['negotiator.acceptNegotiator']
136187
->negotiate($request);
137188

189+
$container['negotiator.acceptMiddleware']
190+
->process($request, $handler);
191+
138192
$container['negotiator.acceptLanguageNegotiator']
139193
->negotiate($request);
140194

195+
$container['negotiator.acceptLanguageMiddleware']
196+
->process($request, $handler);
197+
141198
$container['negotiator.contentTypeNegotiator']
142199
->negotiate($request);
200+
201+
$container['negotiator.contentTypeMiddleware']
202+
->process($request, $handler);
143203
```
144204

145205
### ServiceFactory
146206

147-
* [AcceptLanguageNegotiatorFactory][2]
148-
* [AcceptNegotiatorFactory][3]
149-
* [ContentTypeNegotiatorFactory][4]
207+
* [AcceptLanguageMiddlewareFactory][2]
208+
* [AcceptLanguageNegotiatorFactory][3]
209+
* [AcceptMiddlewareFactory][4]
210+
* [AcceptNegotiatorFactory][5]
211+
* [ContentTypeMiddlewareFactory][6]
212+
* [ContentTypeNegotiatorFactory][7]
150213

151214
## Copyright
152215

153216
2024 Dominik Zogg
154217

155218
[1]: https://packagist.org/packages/chubbyphp/chubbyphp-negotiation
156219

157-
[2]: doc/ServiceFactory/AcceptLanguageNegotiatorFactory.md
158-
[3]: doc/ServiceFactory/AcceptNegotiatorFactory.md
159-
[4]: doc/ServiceFactory/ContentTypeNegotiatorFactory.md
220+
[2]: doc/ServiceFactory/AcceptLanguageMiddlewareFactory.md
221+
[3]: doc/ServiceFactory/AcceptLanguageNegotiatorFactory.md
222+
[4]: doc/ServiceFactory/AcceptMiddlewareFactory.md
223+
[5]: doc/ServiceFactory/AcceptNegotiatorFactory.md
224+
[6]: doc/ServiceFactory/ContentTypeMiddlewareFactory.md
225+
[7]: doc/ServiceFactory/ContentTypeNegotiatorFactory.md
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# AcceptLanguageMiddlewareFactory
2+
3+
## without name (default)
4+
5+
```php
6+
<?php
7+
8+
use Chubbyphp\Negotiation\AcceptLanguageMiddleware;
9+
use Chubbyphp\Negotiation\ServiceFactory\AcceptLanguageMiddlewareFactory;
10+
use Psr\Container\ContainerInterface;
11+
12+
/** @var ContainerInterface $container */
13+
$container = ...;
14+
15+
// $container->get(AcceptLanguageNegotiator::class)
16+
17+
$factory = new AcceptLanguageMiddlewareFactory();
18+
19+
$acceptLanguageMiddleware = $factory($container);
20+
```
21+
22+
## with name `default`
23+
24+
```php
25+
<?php
26+
27+
use Chubbyphp\Negotiation\AcceptLanguageMiddleware;
28+
use Chubbyphp\Negotiation\ServiceFactory\AcceptLanguageMiddlewareFactory;
29+
use Psr\Container\ContainerInterface;
30+
31+
/** @var ContainerInterface $container */
32+
$container = ...;
33+
34+
// $container->get(AcceptLanguageNegotiator::class.'default')
35+
36+
$factory = [AcceptLanguageMiddlewareFactory::class, 'default'];
37+
38+
$acceptLanguageMiddleware = $factory($container);
39+
```

doc/ServiceFactory/AcceptLanguageNegotiatorFactory.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ use Psr\Container\ContainerInterface;
1313
$container = ...;
1414

1515
// $container->get(AcceptLanguageNegotiatorInterface::class.'supportedLocales[]')
16-
// ['de-CH', 'en-US']
1716

1817
$factory = new AcceptLanguageNegotiatorFactory();
1918

@@ -33,7 +32,6 @@ use Psr\Container\ContainerInterface;
3332
$container = ...;
3433

3534
// $container->get(AcceptLanguageNegotiatorInterface::class.'supportedLocales[]default')
36-
// ['de-CH', 'en-US']
3735

3836
$factory = [AcceptLanguageNegotiatorFactory::class, 'default'];
3937

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# AcceptMiddlewareFactory
2+
3+
## without name (default)
4+
5+
```php
6+
<?php
7+
8+
use Chubbyphp\Negotiation\AcceptMiddleware;
9+
use Chubbyphp\Negotiation\ServiceFactory\AcceptMiddlewareFactory;
10+
use Psr\Container\ContainerInterface;
11+
12+
/** @var ContainerInterface $container */
13+
$container = ...;
14+
15+
// $container->get(AcceptNegotiator::class)
16+
17+
$factory = new AcceptMiddlewareFactory();
18+
19+
$acceptMiddleware = $factory($container);
20+
```
21+
22+
## with name `default`
23+
24+
```php
25+
<?php
26+
27+
use Chubbyphp\Negotiation\AcceptMiddleware;
28+
use Chubbyphp\Negotiation\ServiceFactory\AcceptMiddlewareFactory;
29+
use Psr\Container\ContainerInterface;
30+
31+
/** @var ContainerInterface $container */
32+
$container = ...;
33+
34+
// $container->get(AcceptNegotiator::class.'default')
35+
36+
$factory = [AcceptMiddlewareFactory::class, 'default'];
37+
38+
$acceptMiddleware = $factory($container);
39+
```

doc/ServiceFactory/AcceptNegotiatorFactory.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ use Psr\Container\ContainerInterface;
1313
$container = ...;
1414

1515
// $container->get(AcceptNegotiatorInterface::class.'supportedMediaTypes[]')
16-
// ['application/json', 'application/xml']
1716

1817
$factory = new AcceptNegotiatorFactory();
1918

@@ -33,7 +32,6 @@ use Psr\Container\ContainerInterface;
3332
$container = ...;
3433

3534
// $container->get(AcceptNegotiatorInterface::class.'supportedMediaTypes[]default')
36-
// ['application/json', 'application/xml']
3735

3836
$factory = [AcceptNegotiatorFactory::class, 'default'];
3937

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# ContentTypeMiddlewareFactory
2+
3+
## without name (default)
4+
5+
```php
6+
<?php
7+
8+
use Chubbyphp\Negotiation\ContentTypeMiddleware;
9+
use Chubbyphp\Negotiation\ServiceFactory\ContentTypeMiddlewareFactory;
10+
use Psr\Container\ContainerInterface;
11+
12+
/** @var ContainerInterface $container */
13+
$container = ...;
14+
15+
// $container->get(ContentTypeNegotiator::class)
16+
17+
$factory = new ContentTypeMiddlewareFactory();
18+
19+
$contentTypeMiddleware = $factory($container);
20+
```
21+
22+
## with name `default`
23+
24+
```php
25+
<?php
26+
27+
use Chubbyphp\Negotiation\ContentTypeMiddleware;
28+
use Chubbyphp\Negotiation\ServiceFactory\ContentTypeMiddlewareFactory;
29+
use Psr\Container\ContainerInterface;
30+
31+
/** @var ContainerInterface $container */
32+
$container = ...;
33+
34+
// $container->get(ContentTypeNegotiator::class.'default')
35+
36+
$factory = [ContentTypeMiddlewareFactory::class, 'default'];
37+
38+
$contentTypeMiddleware = $factory($container);
39+
```

doc/ServiceFactory/ContentTypeNegotiatorFactory.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ use Psr\Container\ContainerInterface;
1313
$container = ...;
1414

1515
// $container->get(ContentTypeNegotiatorInterface::class.'supportedMediaTypes[]')
16-
// ['application/json', 'application/xml']
1716

1817
$factory = new ContentTypeNegotiatorFactory();
1918

@@ -33,7 +32,6 @@ use Psr\Container\ContainerInterface;
3332
$container = ...;
3433

3534
// $container->get(ContentTypeNegotiatorInterface::class.'supportedMediaTypes[]default')
36-
// ['application/json', 'application/xml']
3735

3836
$factory = [ContentTypeNegotiatorFactory::class, 'default'];
3937

0 commit comments

Comments
 (0)