Tim,

I like the work, but I tend not to like mutable data structures (stuff 
with properties that one sets.)  I'd structure things such that the 
PayPal object's "setters" return a new, immutable instance of the PayPal 
object, so you're code would look like:

val pp: PayPal = new 
PayPal("sandbox").transactionToken(S.param("tx")).useSSL(true)

I'd also update the "execute" method so that it returns another 
immutable object that has current state rather than mutating the 
original PayPal object.

Thanks,

David

Tim Perrett wrote:
> Thanks Derek :-) I have commited any code for ages, so its about time
> I did!
>
> My plan is this - once I get this roll out of the site im doing now
> (which just needs PDT) done, I'll add the IPN functions to it. From
> the docs, it looks pretty straight forward.
>
> You can configure a whole bunch of options like so:
>
>     /* values can be "sanbox" or "live" */
>     var paypal: PayPal = new PayPal("sandbox")
>     /* self expanitory */
>     paypal.transactionToken = S.param("tx").openOr("")
>     /* set if you need to use SSL (changes port and protocol) */
>     paypal.useSSL = true
>     /* run the paypal transaction - either with a PDT payload or IPN
> payload */
>     paypal.execute("pdt")
>
> Anything else / different way of doing it people think I should build
> in?
>
> Tim
>
> On Sep 23, 6:24 pm, "Derek Chen-Becker" <[EMAIL PROTECTED]> wrote:
>   
>> Tim, you rock :)
>>     
>
> >
>   

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to