26
26
import java .util .Map ;
27
27
import java .util .Set ;
28
28
import java .util .concurrent .TimeUnit ;
29
+ import java .util .function .Consumer ;
29
30
import java .util .function .Function ;
30
31
31
32
import org .springframework .beans .factory .BeanClassLoaderAware ;
@@ -552,20 +553,6 @@ protected <T> T postProcessResult(@Nullable T result, RedisConnection conn, bool
552
553
// Methods dealing with Redis Keys
553
554
// -------------------------------------------------------------------------
554
555
555
- @ Override
556
- public void convertAndSend (String channel , Object message ) {
557
-
558
- Assert .hasText (channel , "a non-empty channel is required" );
559
-
560
- byte [] rawChannel = rawString (channel );
561
- byte [] rawMessage = rawValue (message );
562
-
563
- execute (connection -> {
564
- connection .publish (rawChannel , rawMessage );
565
- return null ;
566
- }, true );
567
- }
568
-
569
556
@ Override
570
557
public Boolean copy (K source , K target , boolean replace ) {
571
558
@@ -801,7 +788,6 @@ private <T> T doWithKeys(Function<RedisKeyCommands, T> action) {
801
788
return execute ((RedisCallback <? extends T >) connection -> action .apply (connection .keyCommands ()), true );
802
789
}
803
790
804
-
805
791
// -------------------------------------------------------------------------
806
792
// Methods dealing with sorting
807
793
// -------------------------------------------------------------------------
@@ -875,48 +861,31 @@ public void watch(K key) {
875
861
876
862
byte [] rawKey = rawKey (key );
877
863
878
- execute (connection -> {
879
- connection .watch (rawKey );
880
- return null ;
881
- }, true );
864
+ executeWithoutResult (connection -> connection .watch (rawKey ));
882
865
}
883
866
884
867
@ Override
885
868
public void watch (Collection <K > keys ) {
886
869
887
870
byte [][] rawKeys = rawKeys (keys );
888
871
889
- execute (connection -> {
890
- connection .watch (rawKeys );
891
- return null ;
892
- }, true );
872
+ executeWithoutResult (connection -> connection .watch (rawKeys ));
893
873
}
894
874
895
875
@ Override
896
876
public void unwatch () {
897
877
898
- execute (connection -> {
899
- connection .unwatch ();
900
- return null ;
901
- }, true );
878
+ executeWithoutResult (RedisTxCommands ::unwatch );
902
879
}
903
880
904
-
905
881
@ Override
906
882
public void multi () {
907
- execute (connection -> {
908
- connection .multi ();
909
- return null ;
910
- }, true );
883
+ executeWithoutResult (RedisTxCommands ::multi );
911
884
}
912
885
913
886
@ Override
914
887
public void discard () {
915
-
916
- execute (connection -> {
917
- connection .discard ();
918
- return null ;
919
- }, true );
888
+ executeWithoutResult (RedisTxCommands ::discard );
920
889
}
921
890
922
891
/**
@@ -960,33 +929,20 @@ public List<RedisClientInfo> getClientList() {
960
929
961
930
@ Override
962
931
public void killClient (String host , int port ) {
963
-
964
- execute ((RedisCallback <Void >) connection -> {
965
- connection .killClient (host , port );
966
- return null ;
967
- });
932
+ executeWithoutResult (connection -> connection .killClient (host , port ));
968
933
}
969
934
970
935
/*
971
936
* @see org.springframework.data.redis.core.RedisOperations#replicaOf(java.lang.String, int)
972
937
*/
973
938
@ Override
974
939
public void replicaOf (String host , int port ) {
975
-
976
- execute ((RedisCallback <Void >) connection -> {
977
-
978
- connection .replicaOf (host , port );
979
- return null ;
980
- });
940
+ executeWithoutResult (connection -> connection .replicaOf (host , port ));
981
941
}
982
942
983
943
@ Override
984
944
public void replicaOfNoOne () {
985
-
986
- execute ((RedisCallback <Void >) connection -> {
987
- connection .replicaOfNoOne ();
988
- return null ;
989
- });
945
+ executeWithoutResult (RedisServerCommands ::replicaOfNoOne );
990
946
}
991
947
992
948
@ Override
@@ -997,8 +953,13 @@ public void convertAndSend(String channel, Object message) {
997
953
byte [] rawChannel = rawString (channel );
998
954
byte [] rawMessage = rawValue (message );
999
955
1000
- execute (connection -> {
1001
- connection .publish (rawChannel , rawMessage );
956
+ executeWithoutResult (connection -> connection .publish (rawChannel , rawMessage ));
957
+ }
958
+
959
+ private void executeWithoutResult (Consumer <RedisConnection > action ) {
960
+ execute (it -> {
961
+
962
+ action .accept (it );
1002
963
return null ;
1003
964
}, true );
1004
965
}
0 commit comments