Skip to content

Commit 60da609

Browse files
authored
Merge pull request #107 from dotnetcore/dev
v0.5.4.2 Release
2 parents b49c92b + 8cffed9 commit 60da609

File tree

62 files changed

+1588
-180
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+1588
-180
lines changed

ToDoList.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
- [x] GetCount
2727
- [x] Flush/FlushAsync
2828
- [x] TrySet/TrySetAsync
29+
- [ ] GetExpiration/GetExpirationAsync
2930
- [ ] Others...
3031

3132
## Serializer Extensions

build/releasenotes.props

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,59 @@
11
<Project>
22
<PropertyGroup>
3-
<EasyCachingCorePackageNotes>
4-
1. Add GenerateDocumentationFile.
3+
<EasyCachingCorePackageNotes>
4+
1. Add GetExpiration/GetExpirationAsync for caching provider.
5+
2. IEasyCachingProviderFactory support multi redis provider instances.
6+
3. IRedisCachingProvider add some string and keys methods.
7+
4. Interceptor attribute add cache provider
58
</EasyCachingCorePackageNotes>
69
<EasyCachingMemcachedPackageNotes>
7-
1. Add GenerateDocumentationFile.
10+
1. Add GetExpiration/GetExpirationAsync for caching provider.
811
</EasyCachingMemcachedPackageNotes>
912
<EasyCachingRedisPackageNotes>
10-
1. Add GenerateDocumentationFile.
13+
1. Add GetExpiration/GetExpirationAsync for caching provider.
14+
2. Add some string and keys methods.
1115
</EasyCachingRedisPackageNotes>
1216
<EasyCachingSQLitePackageNotes>
13-
1. Add GenerateDocumentationFile.
17+
1. Add GetExpiration/GetExpirationAsync for caching provider.
1418
</EasyCachingSQLitePackageNotes>
1519
<EasyCachingInMemoryPackageNotes>
16-
1. Add GenerateDocumentationFile.
20+
1. Add GetExpiration/GetExpirationAsync for caching provider.
1721
</EasyCachingInMemoryPackageNotes>
1822
<EasyCachingHybridPackageNotes>
19-
1. Add GenerateDocumentationFile.
20-
2. Fixed bug of Unable to resolve service for type 'EasyCaching.HybridCache.HybridCachingOptions'
23+
1. Add DefaultExpirationForTtlFailed for HybridCachingOptions.
24+
2. Get distributed cached item's expiration when local cache is null.
2125
</EasyCachingHybridPackageNotes>
2226
<EasyCachingAspectCorePackageNotes>
23-
1. Add GenerateDocumentationFile.
27+
1. Update EasyCaching.Core.
28+
2. Swich caching provider via attribute.
29+
3. Handle exception when method return null.
2430
</EasyCachingAspectCorePackageNotes>
2531
<EasyCachingCastlePackageNotes>
26-
1. Add GenerateDocumentationFile.
32+
1. Update EasyCaching.Core.
33+
2. Swich caching provider via attribute.
34+
3. Handle exception when method return null.
2735
</EasyCachingCastlePackageNotes>
2836
<EasyCachingResponseCachingPackageNotes>
29-
1. Add GenerateDocumentationFile.
37+
1. Update EasyCaching.Core.
3038
</EasyCachingResponseCachingPackageNotes>
3139
<EasyCachingJsonPackageNotes>
32-
1. Add GenerateDocumentationFile.
40+
1. Update EasyCaching.Core.
3341
</EasyCachingJsonPackageNotes>
3442
<EasyCachingMessagePackPackageNotes>
35-
1. Add GenerateDocumentationFile.
43+
1. Update EasyCaching.Core.
3644
</EasyCachingMessagePackPackageNotes>
3745
<EasyCachingProtobufPackageNotes>
38-
1. Add GenerateDocumentationFile.
46+
1. Update EasyCaching.Core.
3947
</EasyCachingProtobufPackageNotes>
4048
<EasyCachingCSRedisPackageNotes>
41-
1. Add GenerateDocumentationFile.
49+
1. Add GetExpiration/GetExpirationAsync for caching provider.
50+
2. Add some string and keys methods.
4251
</EasyCachingCSRedisPackageNotes>
4352
<EasyCachingRedisBusPackageNotes>
44-
1. Add GenerateDocumentationFile.
53+
1. Update EasyCaching.Core.
4554
</EasyCachingRedisBusPackageNotes>
4655
<EasyCachingRabbitBusPackageNotes>
47-
1. Add GenerateDocumentationFile.
56+
1. Update EasyCaching.Core.
4857
</EasyCachingRabbitBusPackageNotes>
4958
</PropertyGroup>
5059
</Project>

build/version.props

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
<Project>
22
<PropertyGroup>
3-
<EasyCachingCorePackageVersion>0.5.4.1</EasyCachingCorePackageVersion>
4-
<EasyCachingMemcachedPackageVersion>0.5.4.1</EasyCachingMemcachedPackageVersion>
5-
<EasyCachingRedisPackageVersion>0.5.4.1</EasyCachingRedisPackageVersion>
6-
<EasyCachingSQLitePackageVersion>0.5.4.1</EasyCachingSQLitePackageVersion>
7-
<EasyCachingInMemoryPackageVersion>0.5.4.1</EasyCachingInMemoryPackageVersion>
8-
<EasyCachingHybridPackageVersion>0.5.4.1</EasyCachingHybridPackageVersion>
9-
<EasyCachingAspectCorePackageVersion>0.5.4.1</EasyCachingAspectCorePackageVersion>
10-
<EasyCachingCastlePackageVersion>0.5.4.1</EasyCachingCastlePackageVersion>
11-
<EasyCachingResponseCachingPackageVersion>0.5.4.1</EasyCachingResponseCachingPackageVersion>
12-
<EasyCachingJsonPackageVersion>0.5.4.1</EasyCachingJsonPackageVersion>
13-
<EasyCachingMessagePackPackageVersion>0.5.4.1</EasyCachingMessagePackPackageVersion>
14-
<EasyCachingProtobufPackageVersion>0.5.4.1</EasyCachingProtobufPackageVersion>
15-
<EasyCachingCSRedisPackageVersion>0.5.4.1</EasyCachingCSRedisPackageVersion>
16-
<EasyCachingRedisBusPackageVersion>0.5.4.1</EasyCachingRedisBusPackageVersion>
17-
<EasyCachingCSRedisBusPackageVersion>0.5.4.1</EasyCachingCSRedisBusPackageVersion>
18-
<EasyCachingRabbitBusPackageVersion>0.5.4.1</EasyCachingRabbitBusPackageVersion>
3+
<EasyCachingCorePackageVersion>0.5.4.2</EasyCachingCorePackageVersion>
4+
<EasyCachingMemcachedPackageVersion>0.5.4.2</EasyCachingMemcachedPackageVersion>
5+
<EasyCachingRedisPackageVersion>0.5.4.2</EasyCachingRedisPackageVersion>
6+
<EasyCachingSQLitePackageVersion>0.5.4.2</EasyCachingSQLitePackageVersion>
7+
<EasyCachingInMemoryPackageVersion>0.5.4.2</EasyCachingInMemoryPackageVersion>
8+
<EasyCachingHybridPackageVersion>0.5.4.2</EasyCachingHybridPackageVersion>
9+
<EasyCachingAspectCorePackageVersion>0.5.4.2</EasyCachingAspectCorePackageVersion>
10+
<EasyCachingCastlePackageVersion>0.5.4.2</EasyCachingCastlePackageVersion>
11+
<EasyCachingResponseCachingPackageVersion>0.5.4.2</EasyCachingResponseCachingPackageVersion>
12+
<EasyCachingJsonPackageVersion>0.5.4.2</EasyCachingJsonPackageVersion>
13+
<EasyCachingMessagePackPackageVersion>0.5.4.2</EasyCachingMessagePackPackageVersion>
14+
<EasyCachingProtobufPackageVersion>0.5.4.2</EasyCachingProtobufPackageVersion>
15+
<EasyCachingCSRedisPackageVersion>0.5.4.2</EasyCachingCSRedisPackageVersion>
16+
<EasyCachingRedisBusPackageVersion>0.5.4.2</EasyCachingRedisBusPackageVersion>
17+
<EasyCachingCSRedisBusPackageVersion>0.5.4.2</EasyCachingCSRedisBusPackageVersion>
18+
<EasyCachingRabbitBusPackageVersion>0.5.4.2</EasyCachingRabbitBusPackageVersion>
1919
</PropertyGroup>
2020
</Project>

docs/In-Memory.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,12 @@ public class Startup
3434
option.UseInMemory("default");
3535

3636
// use memory cache with your own configuration
37-
config.UseInMemory(options=>
37+
config.UseInMemory(options =>
3838
{
3939
options.DBConfig = new InMemoryCachingOptions
4040
{
41-
// scan time, default value is 1 min
42-
ExpirationScanFrequency = TimeSpan.FromMinutes(1),
41+
// scan time, default value is 60s
42+
ExpirationScanFrequency = 60,
4343
// total count of cache items, default value is 10000
4444
SizeLimit = 100
4545
};
@@ -87,7 +87,8 @@ And what we add in `appsettings.json` are as following:
8787
"MaxRdSecond": 120,
8888
"Order": 2,
8989
"DBConfig":{
90-
"SizeLimit": 10000
90+
"SizeLimit": 10000,
91+
"ExpirationScanFrequency": 60
9192
}
9293
}
9394
}

src/EasyCaching.Bus.CSRedis/Configurations/CSRedisOptionsExtension.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,7 @@ internal sealed class CSRedisOptionsExtension : IEasyCachingOptionsExtension
2626

2727
/// <summary>
2828
/// Initializes a new instance of the <see cref="T:EasyCaching.CSRedis.RedisOptionsExtension"/> class.
29-
/// </summary>
30-
/// <param name="name">Name.</param>
29+
/// </summary>
3130
/// <param name="configure">Configure.</param>
3231
public CSRedisOptionsExtension(Action<CSRedisBusOptions> configure)
3332
{

src/EasyCaching.Bus.CSRedis/EasyCaching.Bus.CSRedis.csproj

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@
88
<Version>$(EasyCachingRedisBusPackageVersion)</Version>
99
<Description>
1010
A simple caching bus(message bus) based on CSRedis.
11-
</Description>
12-
<GenerateDocumentationFile>true</GenerateDocumentationFile>
11+
</Description>
1312
<PackageTags>Bus,Hybrid,Redis,Caching,Cache</PackageTags>
1413
<PackageProjectUrl>https://github.com/dotnetcore/EasyCaching</PackageProjectUrl>
1514
<PackageLicenseUrl>https://github.com/dotnetcore/EasyCaching/blob/master/LICENSE</PackageLicenseUrl>
@@ -21,6 +20,11 @@
2120
</PackageReleaseNotes>
2221
</PropertyGroup>
2322

23+
<PropertyGroup>
24+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
25+
<NoWarn>$(NoWarn);1591</NoWarn>
26+
</PropertyGroup>
27+
2428
<ItemGroup>
2529
<PackageReference Include="CSRedisCore" Version="3.0.33" />
2630
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="2.1.1" />

src/EasyCaching.Bus.RabbitMQ/Configurations/RabbitMQBusOptions.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,7 @@
66
/// RabbitMQ Bus options.
77
/// </summary>
88
public class RabbitMQBusOptions : BaseRabbitMQOptions
9-
{
10-
/// <summary>
11-
/// Gets or sets the route key.
12-
/// </summary>
13-
/// <value>The route key.</value>
14-
//public string RouteKey { get; set; } = "rmq.queue.undurable.easycaching.subscriber.*";
15-
9+
{
1610
/// <summary>
1711
/// Gets or sets the name of the queue.
1812
/// </summary>

src/EasyCaching.Bus.RabbitMQ/EasyCaching.Bus.RabbitMQ.csproj

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@
88
<Version>$(EasyCachingRabbitBusPackageVersion)</Version>
99
<Description>
1010
A simple caching bus(message bus) based on RabbitMQ.
11-
</Description>
12-
<GenerateDocumentationFile>true</GenerateDocumentationFile>
11+
</Description>
1312
<PackageTags>Bus,Hybrid,RabbitMQ,Caching,Cache</PackageTags>
1413
<PackageProjectUrl>https://github.com/dotnetcore/EasyCaching</PackageProjectUrl>
1514
<PackageLicenseUrl>https://github.com/dotnetcore/EasyCaching/blob/master/LICENSE</PackageLicenseUrl>
@@ -21,6 +20,11 @@
2120
</PackageReleaseNotes>
2221
</PropertyGroup>
2322

23+
<PropertyGroup>
24+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
25+
<NoWarn>$(NoWarn);1591</NoWarn>
26+
</PropertyGroup>
27+
2428
<ItemGroup>
2529
<ProjectReference Include="..\EasyCaching.Core\EasyCaching.Core.csproj" />
2630
</ItemGroup>

src/EasyCaching.Bus.Redis/EasyCaching.Bus.Redis.csproj

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@
88
<Version>$(EasyCachingRedisBusPackageVersion)</Version>
99
<Description>
1010
A simple caching bus(message bus) based on StackExchange.Redis.
11-
</Description>
12-
<GenerateDocumentationFile>true</GenerateDocumentationFile>
11+
</Description>
1312
<PackageTags>Bus,Hybrid,Redis,Caching,Cache</PackageTags>
1413
<PackageProjectUrl>https://github.com/dotnetcore/EasyCaching</PackageProjectUrl>
1514
<PackageLicenseUrl>https://github.com/dotnetcore/EasyCaching/blob/master/LICENSE</PackageLicenseUrl>
@@ -21,6 +20,11 @@
2120
</PackageReleaseNotes>
2221
</PropertyGroup>
2322

23+
<PropertyGroup>
24+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
25+
<NoWarn>$(NoWarn);1591</NoWarn>
26+
</PropertyGroup>
27+
2428
<ItemGroup>
2529
<PackageReference Include="StackExchange.Redis" Version="2.0.519" />
2630
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="2.1.1" />
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
namespace EasyCaching.CSRedis
2+
{
3+
using EasyCaching.Core;
4+
using System.Threading.Tasks;
5+
6+
public partial class DefaultCSRedisCachingProvider : IRedisCachingProvider
7+
{
8+
public string RedisName => this._name;
9+
10+
public bool KeyDel(string cacheKey)
11+
{
12+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
13+
14+
var count = _cache.Del(cacheKey);
15+
return count == 1;
16+
}
17+
18+
public async Task<bool> KeyDelAsync(string cacheKey)
19+
{
20+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
21+
22+
var count = await _cache.DelAsync(cacheKey);
23+
return count == 1;
24+
}
25+
26+
public bool KeyExpire(string cacheKey, int second)
27+
{
28+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
29+
30+
var flag = _cache.Expire(cacheKey, second);
31+
return flag;
32+
}
33+
34+
public async Task<bool> KeyExpireAsync(string cacheKey, int second)
35+
{
36+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
37+
38+
var flag = await _cache.ExpireAsync(cacheKey, second);
39+
return flag;
40+
}
41+
42+
public bool KeyExists(string cacheKey)
43+
{
44+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
45+
46+
var flag = _cache.Exists(cacheKey);
47+
return flag;
48+
}
49+
50+
public async Task<bool> KeyExistsAsync(string cacheKey)
51+
{
52+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
53+
54+
var flag = await _cache.ExistsAsync(cacheKey);
55+
return flag;
56+
}
57+
58+
public long TTL(string cacheKey)
59+
{
60+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
61+
62+
var second = _cache.Ttl(cacheKey);
63+
return second;
64+
}
65+
66+
public async Task<long> TTLAsync(string cacheKey)
67+
{
68+
ArgumentCheck.NotNullOrWhiteSpace(cacheKey, nameof(cacheKey));
69+
70+
var second = await _cache.TtlAsync(cacheKey);
71+
return second;
72+
}
73+
}
74+
}

0 commit comments

Comments
 (0)