Hi Timothy could you point me to the right place to download it? Is there a maven repository to which it gets automatically uploaded?
On Tue, Jan 5, 2010 at 6:36 PM, Timothy Perrett <timo...@getintheloop.eu>wrote: > Pushed to master - will be in hudson jars in a few hours. > > Cheers, Tim > > On Jan 5, 10:06 am, Timothy Perrett <timo...@getintheloop.eu> wrote: > > http://github.com/dpp/liftweb/issues/#issue/270 > > > > Fixed and on review board. > > > > Cheers, Tim > > > > On Jan 5, 8:57 am, Timothy Perrett <timo...@getintheloop.eu> wrote: > > > > > > > > > We don't accept patches for legal reasons. However, I will upgrade the > > > > module today for you - giving a similar result. > > > > > Cheers, Tim > > > > > Sent from my iPhone > > > > > On 5 Jan 2010, at 04:29, Franz Bettag <fr...@bett.ag> wrote: > > > > > > Hey guys, > > > > > > i've just updated the amqp code. I started a pull request on github > > > > but that seems *not* to be the proper way *smirking @dpp's auto- > > > > reply*. > > > > > > Anyway here is the patch. The problem was that in version 1.5.0 of > > > > rabbitmq's library, the ticket-stuff was removed. > > > > > > diff --git a/lift-modules/lift-amqp/pom.xml b/lift-modules/lift-amqp/ > > > > pom.xml > > > > index 9f4c1d5..424be0e 100644 > > > > --- a/lift-modules/lift-amqp/pom.xml > > > > +++ b/lift-modules/lift-amqp/pom.xml > > > > @@ -32,6 +32,15 @@ > > > > </parent> > > > > <artifactId>lift-amqp</artifactId> > > > > > > + <repositories> > > > > + <repository> > > > > + <id>nexus.griddynamics.net</id> > > > > + <name>Nexus Maven2 Repository</name> > > > > + <url>https://nexus.griddynamics.net/nexus/content/groups/ > > > > public</url> > > > > + </repository> > > > > + </repositories> > > > > + > > > > + > > > > <!-- <properties/> --> > > > > > > <!-- > > > > @@ -55,8 +64,8 @@ > > > > </dependency> > > > > <dependency> > > > > <groupId>com.rabbitmq</groupId> > > > > - <artifactId>rabbitmq-client</artifactId> > > > > - <version>1.3.0</version> > > > > + <artifactId>amqp-client</artifactId> > > > > + <version>1.7.0</version> > > > > </dependency> > > > > </dependencies> > > > > > > diff --git a/lift-modules/lift-amqp/src/main/scala/net/liftweb/amqp/ > > > > AMQPDispatcher.scala b/lift-modules/lift-amqp/src/main/scala/net/ > > > > liftweb/amqp/AMQPDispatcher.scala > > > > index 26bca73..96c66c9 100644 > > > > --- a/lift-modules/lift-amqp/src/main/scala/net/liftweb/amqp/ > > > > AMQPDispatcher.scala > > > > +++ b/lift-modules/lift-amqp/src/main/scala/net/liftweb/amqp/ > > > > AMQPDispatcher.scala > > > > @@ -91,7 +91,7 @@ abstract class AMQPDispatcher[T](cf: > > > > ConnectionFactory, host: String, port: Int) > > > > class SerializedConsumer[T](channel: Channel, a: LiftActor) extends > > > > DefaultConsumer(channel) { > > > > override def handleDelivery(tag: String, env: Envelope, props: > > > > AMQP.BasicProperties, body: Array[Byte]) { > > > > val routingKey = env.getRoutingKey > > > > - val contentType = props.contentType > > > > + val contentType = props.getContentType > > > > val deliveryTag = env.getDeliveryTag > > > > val in = new ObjectInputStream(new ByteArrayInputStream(body)) > > > > val t = in.readObject.asInstanceOf[T]; > > > > @@ -109,14 +109,12 @@ class SerializedConsumer[T](channel: Channel, > a: > > > > LiftActor) extends DefaultConsu > > > > class ExampleSerializedAMQPDispatcher[T](factory: ConnectionFactory, > > > > host: String, port: Int) > > > > extends AMQPDispatcher[T](factory, host, port) { > > > > override def configure(channel: Channel) { > > > > - // Get the ticket. > > > > - val ticket = channel.accessRequest("/data") > > > > // Set up the exchange and queue > > > > - channel.exchangeDeclare(ticket, "mult", "direct") > > > > - channel.queueDeclare(ticket, "mult_queue") > > > > - channel.queueBind(ticket, "mult_queue", "mult", "routeroute") > > > > + channel.exchangeDeclare("mult", "direct") > > > > + channel.queueDeclare("mult_queue") > > > > + channel.queueBind("mult_queue", "mult", "routeroute") > > > > // Use the short version of the basicConsume method for > > > > convenience. > > > > - channel.basicConsume(ticket, "mult_queue", false, new > > > > SerializedConsumer(channel, this)) > > > > + channel.basicConsume("mult_queue", false, new SerializedConsumer > > > > (channel, this)) > > > > } > > > > } > > > > > > diff --git a/lift-modules/lift-amqp/src/main/scala/net/liftweb/amqp/ > > > > AMQPSender.scala b/lift-modules/lift-amqp/src/main/scala/net/liftweb/ > > > > amqp/AMQPSender.scala > > > > index 2c60ed6..dc29a2a 100644 > > > > --- a/lift-modules/lift-amqp/src/main/scala/net/liftweb/amqp/ > > > > AMQPSender.scala > > > > +++ b/lift-modules/lift-amqp/src/main/scala/net/liftweb/amqp/ > > > > AMQPSender.scala > > > > @@ -14,11 +14,6 @@ import _root_.java.io.ObjectOutputStream > > > > abstract class AMQPSender[T](cf: ConnectionFactory, host: String, > > > > port: Int, exchange: String, routingKey: String) extends LiftActor { > > > > val conn = cf.newConnection(host, port) > > > > val channel = conn.createChannel() > > > > - val ticket = configure(channel) > > > > - /** > > > > - * Override this to use your own AMQP queue/exchange with the > given > > > > channel. > > > > - */ > > > > - def configure(channel: Channel): Int > > > > > > def send(msg: T) { > > > > // Now write an object to a byte array and shove it across the > > > > wire. > > > > @@ -26,7 +21,7 @@ abstract class AMQPSender[T](cf: ConnectionFactory, > > > > host: String, port: Int, exc > > > > val store = new ObjectOutputStream(bytes) > > > > store.writeObject(msg) > > > > store.close > > > > - channel.basicPublish(ticket, exchange, routingKey, null, > > > > bytes.toByteArray) > > > > + channel.basicPublish(exchange, routingKey, null, > > > > bytes.toByteArray) > > > > } > > > > > > protected def messageHandler = { > > > > @@ -46,12 +41,6 @@ abstract class AMQPSender[T](cf: > ConnectionFactory, > > > > host: String, port: Int, exc > > > > * consider creating Actor-based Senders, that will help your > > > > application to scale. > > > > */ > > > > class StringAMQPSender(cf: ConnectionFactory, host: String, port: > > > > Int, exchange: String, routingKey: String) extends AMQPSender[String] > > > > (cf, host, port, exchange, routingKey) { > > > > - override def configure(channel: Channel) = { > > > > - val conn = cf.newConnection(host, port) > > > > - val channel = conn.createChannel() > > > > - val ticket = channel.accessRequest("/data") > > > > - ticket > > > > - } > > > > } > > > > > > /** > > > > @@ -90,13 +79,12 @@ object ExampleDirectAMQPSender { > > > > val factory = new ConnectionFactory(params) > > > > val conn = factory.newConnection(host, port) > > > > val channel = conn.createChannel() > > > > - val ticket = channel.accessRequest("/data") > > > > // Now write an object to a byte array and shove it across the > > > > wire. > > > > val bytes = new ByteArrayOutputStream > > > > val store = new ObjectOutputStream(bytes) > > > > store.writeObject(msg) > > > > store.close > > > > - channel.basicPublish(ticket, "mult", "routeroute", null, > > > > bytes.toByteArray) > > > > + channel.basicPublish("mult", "routeroute", null, > > > > bytes.toByteArray) > > > > } > > > > } > > > > > > On 5 Jan., 04:34, vishnu <path...@gmail.com> wrote: > > > >> well I'm not sure how to describe it differently. As you said it's > > > >> only > > > >> service tier. The truth is I dont know anything about Lift yet and > > > >> Im just > > > >> now running through some basic Scala books. > > > > > >> I need a library with which to talk to rabbitmq as a subscriber > > > >> that might > > > >> work at a higher level than the default java api that comes with > > > >> rabbitmq > > > >> and ideally something that provides the same service for me talk to > a > > > >> database via scala. I haven't seen Akka before, so I'll take a look > > > > >> at that > > > >> :). Would you say mapper is worth it? > > > > > >> On Tue, Jan 5, 2010 at 2:23 AM, Timothy Perrett > > > >> <timo...@getintheloop.eu>wrote: > > > > > >>> It depends on your use case... you don't really describe exactly > > > >>> what you > > > >>> want to do. Perhaps start by providing more detail? If you want > > > >>> service teir > > > >>> *only* though, its quite probable that akka would be a better fix. > > > > > >>> Cheers, Tim > > > > > >>> On 4 Jan 2010, at 20:30, Channing Walton wrote: > > > > > >>>> Maybe Akka would be better for you?http://akkasource.org/ > > > >>>> "Akka has an AMQP module which abstracts AMQP Producer and > > > >>>> Consumer as > > > >>>> Actors." > > > > > >>>> Channing > > > > > >>>> vishnu-11 wrote: > > > > > >>>>> Hi > > > >>>>> I'm trying to use lift to right a back end for a system that > > > >>>>> communicates via AMQP. The idea is to have a bunch of (threads?, > > > >>>>> processes? actors?) that subscribe to some queues on a queueing > > > >>>>> system > > > >>>>> and react to various messages by contacting various third party > > > >>>>> systems and persisting messages to a database. > > > > > >>>>> I was wondering firstly if it makes sense to use lift, or if it > > > >>>>> makes > > > >>>>> more sense to pull various parts out of lift and use them? > > > > > >>>>> Additionally, looking at the lift amqp code, it seems to be a > > > >>>>> little > > > >>>>> out of date, especially with regard to amqp. Does anyone know if > > > > >>>>> there > > > >>>>> has been any active work on this segment? > > > > > >>>>> -- > > > > > >>>>> You received this message because you are subscribed to the > Google > > > >>> Groups > > > >>>>> "Lift" group. > > > >>>>> To post to this group, send email to lift...@googlegroups.com. > > > >>>>> To unsubscribe from this group, send email to > > > >>>>> liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> > <liftweb > > > >>>>> %2bunsubscr...@googlegroups.com> > > > >>> . > > > >>>>> For more options, visit this group at > > > >>>>>http://groups.google.com/group/liftweb?hl=en. > > > > > >>>> -- > > > >>>> View this message in context: > > > >>> > http://old.nabble.com/Lift-based-backend-server-subscribing-via-amqp- > > > >>> ... > > > >>>> Sent from the liftweb mailing list archive at Nabble.com. > > > > > >>>> -- > > > > > >>>> You received this message because you are subscribed to the > > > >>>> Google Groups > > > >>> "Lift" group. > > > >>>> To post to this group, send email to lift...@googlegroups.com. > > > >>>> To unsubscribe from this group, send email to > > > >>> liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> > <liftweb > > > >>> %2bunsubscr...@googlegroups.com> > > > >>> . > > > >>>> For more options, visit this group at > > > >>>http://groups.google.com/group/liftweb?hl=en. > > > > > >>> -- > > > > > >>> You received this message because you are subscribed to the Google > > > > >>> Groups > > > >>> "Lift" group. > > > >>> To post to this group, send email to lift...@googlegroups.com. > > > >>> To unsubscribe from this group, send email to > > > > ... > > > > read more ยป > > -- > > You received this message because you are subscribed to the Google Groups > "Lift" group. > To post to this group, send email to lift...@googlegroups.com. > To unsubscribe from this group, send email to > liftweb+unsubscr...@googlegroups.com<liftweb%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/liftweb?hl=en. > > >--
You received this message because you are subscribed to the Google Groups "Lift" group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.