Skip Menu |

This queue is for tickets about the Net-Amazon-MechanicalTurk CPAN distribution.

Report information
The Basics
Id: 45971
Status: open
Priority: 0/
Queue: Net-Amazon-MechanicalTurk

People
Owner: Nobody in particular
Requestors: michele.r.berg [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 1.01
Fixed in: (no value)



Subject: New bug in version 1.01 with RESTTransport.pm
When attempting to create a new object of the type: Net::Amazon::MechanicalTurk->new() I am returned the following error: Can't locate object method "new" via package "Net::Amazon::MechanicalTurk::Transport::RESTTransport" at /usr/local/share/perl/5.10.0/Net/Amazon/MechanicalTurk/Transport.pm line 21. This is clearly because Transport.pm, which is invoked by MechanicalTurk.pm, calls the "new" method on $module, where $module is defined: my $module = "Net::Amazon::MechanicalTurk::Transport::${transport}Transport"; This is invoked from the following statement in MechanicalTurk.pm: $self->setAttributesIfNotDefined( transport => Net::Amazon::MechanicalTurk::Transport->create, serviceName => "AWSMechanicalTurkRequester", serviceVersion => $DEFAULT_SERVICE_VERSION, serviceUrl => $SANDBOX_URL, ); and as your notes state, The default transport is of type Net::Amazon::MechanicalTurk::Transport::RESTTransport. So...Mechanical Turk calls upon Transport, with a default type of REST. Transport call upon any module passed to it, with a default call of "new", which RESTTransport does not have. What baffles me is why this *isn't* failing in version 1.0. What changed between versions 1.0 and 1.01? Thanks, Michele Perl version 5.10 Unix server