@@ -25,6 +25,7 @@ import com.couchbase.client.performer.core.util.ErrorUtil
2525import com .couchbase .client .performer .core .util .TimeUtil .getTimeNow
2626import com .couchbase .client .performer .scala .Content .{ContentByteArray , ContentJson , ContentNull , ContentString }
2727import com .couchbase .client .performer .scala .ScalaSdkCommandExecutor ._
28+ import com .couchbase .client .performer .scala .util .SerializableValidation .assertIsSerializable
2829// [start:1.5.0]
2930import com .couchbase .client .performer .scala .kv .{GetReplicaHelper , MutateInHelper }
3031// [end:1.5.0]
@@ -518,6 +519,7 @@ object ScalaSdkCommandExecutor {
518519
519520 // [start:1.5.0]
520521 def processScanResult (request : Scan , r : ScanResult ): com.couchbase.client.protocol.run.Result = {
522+ assertIsSerializable(r)
521523 val builder = com.couchbase.client.protocol.sdk.kv.rangescan.ScanResult .newBuilder
522524 .setId(r.id)
523525 .setIdOnly(r.idOnly)
@@ -646,6 +648,7 @@ object ScalaSdkCommandExecutor {
646648 case Right (expiry) => out.expiry(expiry)
647649 }
648650 if (opts.hasTranscoder) out = out.transcoder(convertTranscoder(opts.getTranscoder))
651+ assertIsSerializable(out)
649652 out
650653 } else null
651654 }
@@ -658,6 +661,7 @@ object ScalaSdkCommandExecutor {
658661 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
659662 if (opts.hasDurability) out = out.durability(convertDurability(opts.getDurability))
660663 if (opts.hasCas) out = out.cas(opts.getCas)
664+ assertIsSerializable(out)
661665 out
662666 } else null
663667 }
@@ -672,6 +676,7 @@ object ScalaSdkCommandExecutor {
672676 if (opts.getProjectionCount > 0 )
673677 out = out.project(opts.getProjectionList.asByteStringList().toSeq.map(v => v.toStringUtf8))
674678 if (opts.hasTranscoder) out = out.transcoder(convertTranscoder(opts.getTranscoder))
679+ assertIsSerializable(out)
675680 out
676681 } else null
677682 }
@@ -712,6 +717,7 @@ object ScalaSdkCommandExecutor {
712717 // [start:1.1.5]
713718 if (opts.hasPreserveExpiry) out = out.preserveExpiry(opts.getPreserveExpiry)
714719 // [end:1.1.5]
720+ assertIsSerializable(out)
715721 out
716722 } else null
717723 }
@@ -751,6 +757,7 @@ object ScalaSdkCommandExecutor {
751757 // [start:1.1.5]
752758 if (opts.hasPreserveExpiry) out = out.preserveExpiry(opts.getPreserveExpiry)
753759 // [end:1.1.5]
760+ assertIsSerializable(out)
754761 out
755762 } else null
756763 }
@@ -772,6 +779,7 @@ object ScalaSdkCommandExecutor {
772779 if (opts.hasBatchTimeLimit) throw new UnsupportedOperationException (" Cannot support batch time limit" );
773780 // Will add when adding support for Caps.OBSERVABILITY_1.
774781 // if (opts.hasParentSpanId) out = out.parentSpan(spans.get(opts.getParentSpanId))
782+ assertIsSerializable(out)
775783 out
776784 } else null
777785 }
@@ -785,6 +793,7 @@ object ScalaSdkCommandExecutor {
785793 if (opts.hasTimeoutMsecs)
786794 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
787795 if (opts.hasTranscoder) out = out.transcoder(convertTranscoder(opts.getTranscoder))
796+ assertIsSerializable(out)
788797 out
789798 } else null
790799 }
@@ -795,6 +804,7 @@ object ScalaSdkCommandExecutor {
795804 var out = UnlockOptions ()
796805 if (opts.hasTimeoutMsecs)
797806 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
807+ assertIsSerializable(out)
798808 out
799809 } else null
800810 }
@@ -805,6 +815,7 @@ object ScalaSdkCommandExecutor {
805815 var out = ExistsOptions ()
806816 if (opts.hasTimeoutMsecs)
807817 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
818+ assertIsSerializable(out)
808819 out
809820 } else null
810821 }
@@ -815,6 +826,7 @@ object ScalaSdkCommandExecutor {
815826 var out = TouchOptions ()
816827 if (opts.hasTimeoutMsecs)
817828 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
829+ assertIsSerializable(out)
818830 out
819831 } else null
820832 }
@@ -826,6 +838,7 @@ object ScalaSdkCommandExecutor {
826838 if (opts.hasTimeoutMsecs)
827839 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
828840 if (opts.hasTranscoder) out = out.transcoder(convertTranscoder(opts.getTranscoder))
841+ assertIsSerializable(out)
829842 out
830843 } else null
831844 }
@@ -837,6 +850,7 @@ object ScalaSdkCommandExecutor {
837850 if (opts.hasTimeoutMsecs)
838851 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
839852 if (opts.hasTranscoder) out = out.transcoder(convertTranscoder(opts.getTranscoder))
853+ assertIsSerializable(out)
840854 out
841855 } else null
842856 }
@@ -848,6 +862,7 @@ object ScalaSdkCommandExecutor {
848862 if (opts.hasTimeoutMsecs)
849863 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
850864 if (opts.hasTranscoder) out = out.transcoder(convertTranscoder(opts.getTranscoder))
865+ assertIsSerializable(out)
851866 out
852867 } else null
853868 }
@@ -864,6 +879,7 @@ object ScalaSdkCommandExecutor {
864879 case Left (expiry) => out.expiry(expiry)
865880 case Right (expiry) => out.expiry(expiry)
866881 }
882+ assertIsSerializable(out)
867883 Some (out)
868884 } else None
869885 }
@@ -880,6 +896,7 @@ object ScalaSdkCommandExecutor {
880896 case Left (expiry) => out.expiry(expiry)
881897 case Right (expiry) => out.expiry(expiry)
882898 }
899+ assertIsSerializable(out)
883900 Some (out)
884901 } else None
885902 }
@@ -892,6 +909,7 @@ object ScalaSdkCommandExecutor {
892909 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
893910 if (opts.hasCas) out = out.cas(opts.getCas)
894911 if (opts.hasDurability) out = out.durability(convertDurability(opts.getDurability))
912+ assertIsSerializable(out)
895913 Some (out)
896914 } else None
897915 }
@@ -904,6 +922,7 @@ object ScalaSdkCommandExecutor {
904922 out = out.timeout(Duration .create(opts.getTimeoutMsecs, TimeUnit .MILLISECONDS ))
905923 if (opts.hasCas) out = out.cas(opts.getCas)
906924 if (opts.hasDurability) out = out.durability(convertDurability(opts.getDurability))
925+ assertIsSerializable(out)
907926 Some (out)
908927 } else None
909928 }
@@ -926,6 +945,7 @@ object ScalaSdkCommandExecutor {
926945 result : com.couchbase.client.protocol.run.Result .Builder ,
927946 value : MutationResult
928947 ): Unit = {
948+ assertIsSerializable(result)
929949 val builder = com.couchbase.client.protocol.sdk.kv.MutationResult .newBuilder.setCas(value.cas)
930950 value.mutationToken.foreach(
931951 mt =>
@@ -945,6 +965,7 @@ object ScalaSdkCommandExecutor {
945965 result : com.couchbase.client.protocol.run.Result .Builder ,
946966 value : GetResult
947967 ): Unit = {
968+ assertIsSerializable(result)
948969 val builder = com.couchbase.client.protocol.sdk.kv.GetResult .newBuilder
949970 .setCas(value.cas)
950971
@@ -973,6 +994,7 @@ object ScalaSdkCommandExecutor {
973994 result : com.couchbase.client.protocol.run.Result .Builder ,
974995 value : ExistsResult
975996 ): Unit = {
997+ assertIsSerializable(value)
976998 result.setSdk(com.couchbase.client.protocol.sdk.Result .newBuilder
977999 .setExistsResult(com.couchbase.client.protocol.sdk.kv.ExistsResult .newBuilder
9781000 .setCas(value.cas)
@@ -983,6 +1005,7 @@ object ScalaSdkCommandExecutor {
9831005 result : com.couchbase.client.protocol.run.Result .Builder ,
9841006 value : CounterResult
9851007 ): Unit = {
1008+ assertIsSerializable(value)
9861009 val builder = com.couchbase.client.protocol.sdk.kv.CounterResult .newBuilder
9871010 .setCas(value.cas)
9881011 .setContent(value.content)
@@ -1021,6 +1044,7 @@ object ScalaSdkCommandExecutor {
10211044 }
10221045
10231046 def convertException (raw : Throwable ): com.couchbase.client.protocol.shared.Exception = {
1047+ assertIsSerializable(raw)
10241048 val ret = com.couchbase.client.protocol.shared.Exception .newBuilder
10251049
10261050 if (raw.isInstanceOf [CouchbaseException ] || raw.isInstanceOf [UnsupportedOperationException ]) {
@@ -1068,7 +1092,7 @@ object ScalaSdkCommandExecutor {
10681092 }
10691093 options = options.serviceTypes(services)
10701094 }
1071-
1095+ assertIsSerializable(options)
10721096 options
10731097 }
10741098}
0 commit comments