@@ -239,15 +239,25 @@ public void requestAsync(String method, String path, Param[] params, HttpCore.Re
239239 */
240240 @ Experimental
241241 public PublishResponse [] publishBatch (Message .Batch [] pubSpecs , ChannelOptions channelOptions ) throws AblyException {
242- return publishBatchImpl (pubSpecs , channelOptions ).sync ();
242+ return publishBatchImpl (pubSpecs , channelOptions , null ).sync ();
243+ }
244+
245+ @ Experimental
246+ public PublishResponse [] publishBatch (Message .Batch [] pubSpecs , ChannelOptions channelOptions , Param [] params ) throws AblyException {
247+ return publishBatchImpl (pubSpecs , channelOptions , params ).sync ();
243248 }
244249
245250 @ Experimental
246251 public void publishBatchAsync (Message .Batch [] pubSpecs , ChannelOptions channelOptions , final Callback <PublishResponse []> callback ) throws AblyException {
247- publishBatchImpl (pubSpecs , channelOptions ).async (callback );
252+ publishBatchImpl (pubSpecs , channelOptions , null ).async (callback );
253+ }
254+
255+ @ Experimental
256+ public void publishBatchAsync (Message .Batch [] pubSpecs , ChannelOptions channelOptions , Param [] params , final Callback <PublishResponse []> callback ) throws AblyException {
257+ publishBatchImpl (pubSpecs , channelOptions , null ).async (callback );
248258 }
249259
250- private Http .Request <PublishResponse []> publishBatchImpl (final Message .Batch [] pubSpecs , ChannelOptions channelOptions ) throws AblyException {
260+ private Http .Request <PublishResponse []> publishBatchImpl (final Message .Batch [] pubSpecs , ChannelOptions channelOptions , final Param [] params ) throws AblyException {
251261 boolean hasClientSuppliedId = false ;
252262 for (Message .Batch spec : pubSpecs ) {
253263 for (Message message : spec .messages ) {
@@ -270,7 +280,7 @@ private Http.Request<PublishResponse[]> publishBatchImpl(final Message.Batch[] p
270280 @ Override
271281 public void execute (HttpScheduler http , final Callback <PublishResponse []> callback ) throws AblyException {
272282 HttpCore .RequestBody requestBody = options .useBinaryProtocol ? MessageSerializer .asMsgpackRequest (pubSpecs ) : MessageSerializer .asJSONRequest (pubSpecs );
273- http .post ("/messages" , HttpUtils .defaultAcceptHeaders (options .useBinaryProtocol ), null , requestBody , new HttpCore .ResponseHandler <PublishResponse []>() {
283+ http .post ("/messages" , HttpUtils .defaultAcceptHeaders (options .useBinaryProtocol ), params , requestBody , new HttpCore .ResponseHandler <PublishResponse []>() {
274284 @ Override
275285 public PublishResponse [] handleResponse (HttpCore .Response response , ErrorInfo error ) throws AblyException {
276286 if (error != null && error .code != 40020 ) {
0 commit comments