Iv видели это common-aws on github для того, как использовать его, и это их пример (только для отправителя причиной этого является то, что мне нужно):Как правильно отправить сообщение в очередь amazon sqs с scala?
import com.amazonaws.services.sqs.AmazonSQSAsyncClient
import com.pellucid.wrap.sqs.AmazonSQSScalaClient
import com.mfglabs.commons.aws.sqs._
val sqs = new AmazonSQSScalaClient(new AmazonSQSAsyncClient(), ec)
val builder = SQSStreamBuilder(sqs)
val sender: Flow[String, SendMessageResult, Unit] =
Flow[String].map { body =>
val req = new SendMessageRequest()
req.setMessageBody(body)
req.setQueueUrl(queueUrl)
req
}
.via(builder.sendMessageAsStream())
, но я получаю некоторые ошибки, и я действительно не понимаю, этот пример, мне нужно создать func, который принимает список классов case, сериализовать каждый из списка в json и отправить его в очередь sqs ... thats it, так что это то, что я пробовал до сих пор:
val queueUrl = "the url to my queue"
//the objects here are of case class type ObjectUploadRequest
val listOfObjects = List(Obj1, Obj2, Obj3, Obj4, Obj5)
def pushListToSQS(listOfObjectsRequests: List[ObjectUploadRequest]): Future[SendMessageRequest] = {
listOfObjectsRequests.map(objReq => {
val ser = swrite(objReq)
val sender: Flow[String, SendMessageResult, Unit] =
Flow[String].map { body =>
val req = new SendMessageRequest()
req.setMessageBody(body)
req.setQueueUrl(queueUrl)
req
}.via(builder.sendMessageAsStream())
})
}
и im получение этой ошибки:
был бы признателен, если кто-то может помочь, спасибо