Size: a a a

Scala User Group

2020 August 05

D

Daniel in Scala User Group
как-то двулично
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Слышал, что если вовремя не лайкнуть, последствия могут быть
источник

D

Daniel in Scala User Group
это про другие лайки
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Daniel
как-то двулично
Нелюбовь к обсуждению в твиттере двулична?
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Обсуждения в этом чате породили несколько библиотек и много полезных вещей для них, помогли куче людей найти полезные штуки.
А вот в твиттере ни разу не видел, чтобы обсуждение, т.е. реплаи приводили к чему-то полезному.
Можно оставить только оповещения о статьях и событиях
источник

N

Nik in Scala User Group
Всем доброе
Подскажите, пожалуйста, как вытащить переменную stringMessage из этой функции?
def Listener(): Unit = {

     val connectionFactory  = new ActiveMQConnectionFactory(activeMqUrl)
     val connection = connectionFactory.createConnection
     connection.setClientID("gatling")
     connection.start

     println("Started")

     val qsession: javax.jms.Session = connection.createSession(false, ActiveMQSession.INDIVIDUAL_ACKNOWLEDGE)
     val queue  = qsession.createQueue("dest")
     val consumer = qsession.createConsumer(queue)
     var count = 0
     var msg : String = ""

     val listener = new MessageListener {
       def onMessage(message: Message) {
         var msg1 = ""
         message match {
           case text: BytesMessage => {

             if (message.isInstanceOf[BytesMessage] && count < 1) {

               val byteMessage = message.asInstanceOf[BytesMessage]
               var byteData = new Array[Byte](byteMessage.getBodyLength.toInt)
               byteMessage.readBytes(byteData)
               byteMessage.reset()
               var stringMessage = new String(byteData)
//                println("Received message: " + stringMessage)
               count += 1
               println("Count: " + count)

                 text.acknowledge()
                 msg1 = stringMessage
//                  println(msg)

             }
           }
           case _ => {
             throw new Exception("Unhandled Message Type: " + message.getClass.getSimpleName)
           }
             println("msg1 :" + msg1)
         }
       }
     }
     consumer.setMessageListener(listener)
   }
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Nik
Всем доброе
Подскажите, пожалуйста, как вытащить переменную stringMessage из этой функции?
def Listener(): Unit = {

     val connectionFactory  = new ActiveMQConnectionFactory(activeMqUrl)
     val connection = connectionFactory.createConnection
     connection.setClientID("gatling")
     connection.start

     println("Started")

     val qsession: javax.jms.Session = connection.createSession(false, ActiveMQSession.INDIVIDUAL_ACKNOWLEDGE)
     val queue  = qsession.createQueue("dest")
     val consumer = qsession.createConsumer(queue)
     var count = 0
     var msg : String = ""

     val listener = new MessageListener {
       def onMessage(message: Message) {
         var msg1 = ""
         message match {
           case text: BytesMessage => {

             if (message.isInstanceOf[BytesMessage] && count < 1) {

               val byteMessage = message.asInstanceOf[BytesMessage]
               var byteData = new Array[Byte](byteMessage.getBodyLength.toInt)
               byteMessage.readBytes(byteData)
               byteMessage.reset()
               var stringMessage = new String(byteData)
//                println("Received message: " + stringMessage)
               count += 1
               println("Count: " + count)

                 text.acknowledge()
                 msg1 = stringMessage
//                  println(msg)

             }
           }
           case _ => {
             throw new Exception("Unhandled Message Type: " + message.getClass.getSimpleName)
           }
             println("msg1 :" + msg1)
         }
       }
     }
     consumer.setMessageListener(listener)
   }
источник

N

Nik in Scala User Group
Код там публиковать?
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Nik
Код там публиковать?
да
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Nik
Код там публиковать?
Добиться, чтобы он скомпилировался
источник

N

Nik in Scala User Group
Код-то работает..
Просто никак не могу вытащить переменну - видимо она сокрыта, а как обойти это не знаю..
источник

ᛒᚨᚱᛏᛟᛋᛋᛟ... in Scala User Group
Nik
Код-то работает..
Просто никак не могу вытащить переменну - видимо она сокрыта, а как обойти это не знаю..
верни ее из метода
источник

ᛒᚨᚱᛏᛟᛋᛋᛟ... in Scala User Group
или приравнивай к какой то переменной как в джаве
источник

N

Nik in Scala User Group
ᛒᚨᚱᛏᛟᛋᛋᛟ
или приравнивай к какой то переменной как в джаве
Вот так почему-то не работает
источник

N

Nik in Scala User Group
ᛒᚨᚱᛏᛟᛋᛋᛟ
верни ее из метода
А так ошибка
Несоответсвие интерфейсу
источник

AD

Apache DOG™ in Scala User Group
Nik
Всем доброе
Подскажите, пожалуйста, как вытащить переменную stringMessage из этой функции?
def Listener(): Unit = {

     val connectionFactory  = new ActiveMQConnectionFactory(activeMqUrl)
     val connection = connectionFactory.createConnection
     connection.setClientID("gatling")
     connection.start

     println("Started")

     val qsession: javax.jms.Session = connection.createSession(false, ActiveMQSession.INDIVIDUAL_ACKNOWLEDGE)
     val queue  = qsession.createQueue("dest")
     val consumer = qsession.createConsumer(queue)
     var count = 0
     var msg : String = ""

     val listener = new MessageListener {
       def onMessage(message: Message) {
         var msg1 = ""
         message match {
           case text: BytesMessage => {

             if (message.isInstanceOf[BytesMessage] && count < 1) {

               val byteMessage = message.asInstanceOf[BytesMessage]
               var byteData = new Array[Byte](byteMessage.getBodyLength.toInt)
               byteMessage.readBytes(byteData)
               byteMessage.reset()
               var stringMessage = new String(byteData)
//                println("Received message: " + stringMessage)
               count += 1
               println("Count: " + count)

                 text.acknowledge()
                 msg1 = stringMessage
//                  println(msg)

             }
           }
           case _ => {
             throw new Exception("Unhandled Message Type: " + message.getClass.getSimpleName)
           }
             println("msg1 :" + msg1)
         }
       }
     }
     consumer.setMessageListener(listener)
   }
def Listner(callback: String => Unit) и внутри вызови в конце callback
источник

AD

Apache DOG™ in Scala User Group
колбечная джавка, стандард эдишн
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Nik
Код-то работает..
Просто никак не могу вытащить переменну - видимо она сокрыта, а как обойти это не знаю..
Я к тому, что чтобы увеличить вероятность помощи, нужно создать воспроизводимый пример.
Т.е. так, чтобы этот пример мог скомпилировать и запустить другой.
источник

AD

Apache DOG™ in Scala User Group
перед экноледж
источник

AD

Apache DOG™ in Scala User Group
def Listener(callback: String => Unit): Unit = {

     val connectionFactory  = new ActiveMQConnectionFactory(activeMqUrl)
     val connection = connectionFactory.createConnection
     connection.setClientID("gatling")
     connection.start

     println("Started")

     val qsession: javax.jms.Session = connection.createSession(false, ActiveMQSession.INDIVIDUAL_ACKNOWLEDGE)
     val queue  = qsession.createQueue("dest")
     val consumer = qsession.createConsumer(queue)
     var count = 0
     var msg : String = ""

     val listener = new MessageListener {
       def onMessage(message: Message) {
         var msg1 = ""
         message match {
           case text: BytesMessage => {

             if (message.isInstanceOf[BytesMessage] && count < 1) {

               val byteMessage = message.asInstanceOf[BytesMessage]
               var byteData = new Array[Byte](byteMessage.getBodyLength.toInt)
               byteMessage.readBytes(byteData)
               byteMessage.reset()
               var stringMessage = new String(byteData)
//                println("Received message: " + stringMessage)
               count += 1
               println("Count: " + count)
               callback(stringMessage)
                 text.acknowledge()
                 msg1 = stringMessage
//                  println(msg)

             }
           }
           case _ => {
             throw new Exception("Unhandled Message Type: " + message.getClass.getSimpleName)
           }
             println("msg1 :" + msg1)
         }
       }
     }
     consumer.setMessageListener(listener)
   }
источник