Hey,

I have updated the classes again. I have created
Zend_Payment_Gateway_Paypal_Customer which handles customer billing and
credit card info. now i am willing to split the rest of the class into
several smaller classes such as Zend_Payment_Gateway_Paypal_Transaction,
Zend_Payment_Gateway_Paypal_PDT, Zend_Payment_Gateway_Paypal_Checkout etc...
the questions is will those classes extend the Zend_Payment_Gateway_Paypal
or Zend_Payment_Gateway_Abstract ? since some of them share the same
methods? and extending Zend_Payment_Gateway_Paypal will reduce the need of
duplication methods such as isSuccess, isFailed etc..

In addition a review for the current things done will be also appreciated. I
am trying to do this as fast as i can but my time is limited and any help on
this will be appreciated, Even help by commeting splitting the classes,
adding/editing existing funcitionality etc...
Anything will bring us one step forward on having a base class for a
complete component.

you can checkout the current code from the svn
http://code.google.com/p/zendpayment/

Thanks.

On Thu, Apr 30, 2009 at 10:26 AM, Vadim Gabriel <[email protected]> wrote:

> Hey,
>
> I have updated the classes.
>
> * Updated class members to protected instead of private so overriding them
> will be easier
> * Updated exception class to throw exceptions using
> zend_payment_gateway_exception
> * Added class member $throwExceptions and a setter method to control the
> exceptions behavior
> * Updated few of the method names
> * Updated the construct function to be able to pass an instance of
> zend_http_client instead of creating one
> * Added some more descriptions to the methods
> * Cleaned the notices showed up
> * Updated abstract methods
>
> Basically most of the things noted were done, If the changes made are ok i
> can move onto splitting the classes to several smaller classes that will
> reflect different actions such as subscriptions, express, PDT, and misc for
> example (feedback and suggestions on splitting them up also appreciated)
>
> SVN updated.
>
> Thanks.
>
>
> On Wed, Apr 29, 2009 at 11:03 PM, till <[email protected]> wrote:
>
>> On Wed, Apr 29, 2009 at 7:57 PM, Vadim Gabriel <[email protected]>
>> wrote:
>> >
>> >
>> > On Tue, Apr 28, 2009 at 8:33 PM, till <[email protected]> wrote:
>> >>
>> >> On Tue, Apr 28, 2009 at 6:48 PM, Vadim Gabriel <[email protected]>
>> wrote:
>> > (...)
>> >> > 6) I was thinking about that while i was wrtting this. But then i
>> said
>> >> > for
>> >> > consistency i should stick with one class for each gateway. It's not
>> a
>> >> > problem to split those up to there appropriate classes. That's why i
>> >> > wanted
>> >> > this feedback. The question is if this is something that more
>> developers
>> >> > would like to see? And in what way to split them up?
>> >>
>> >> IMHO, it would be nice since it makes the API more simple and cleaner.
>> >
>> > Will try and separate those once we get a nice good clean code. :)
>>
>> That's great, if you need feedback, I'm all available.
>>
>> > (...)
>> >> > 10) Yes, I was thinking if throwing exceptions will be a better
>> choice
>> >> > then
>> >> > just storing the error message returned in a class variables and then
>> >> > retriving them later on. At some point i even included both. Do you
>> >> > think
>> >> > throwing exceptions will be best handled? If so i could probably
>> throw
>> >> > them
>> >> > then just storing the message in a varible.
>> >>
>> >> Maybe allow people to control the behavior?
>> >
>> > That's what i did in the first place. I will bring that back again. How
>> > about a class member $throwExceptions with a method setter?
>>
>> Sounds good to me!
>>
>> > (...)
>> >> Is Tranzila any good?
>> >
>> > I have used Tranzila in a single project and it was used on a local
>> website
>> > here in Israel. I never used it on a website other then an Israeli one.
>> I
>> > hope that it supports different kind of languages and countries because
>> from
>> > what i have seen there website and client terminal and account managment
>> is
>> > in Hebrew.
>>
>> Ah, good to know. :)
>>
>> Till
>>
>
>
>
> --
> Vincent Gabriel.
> Lead Developer, Senior Support.
> Zend Certified Engineer.
> Zend Framework Certified Engineer.
> -- http://www.vadimg.co.il/
>
>
>
>


-- 
Vincent Gabriel.
Lead Developer, Senior Support.
Zend Certified Engineer.
Zend Framework Certified Engineer.
-- http://www.vadimg.co.il/

Reply via email to