invert new::on logic to make remoting saner
[scpubgit/Object-Remote.git] / lib / Object / Remote / Connection.pm
index 291b554..a5ad302 100644 (file)
@@ -92,12 +92,20 @@ BEGIN {
 
 sub new_from_spec {
   my ($class, $spec) = @_;
+  return $spec if blessed $spec;
   foreach my $poss (do { our @Guess }) {
     if (my $obj = $poss->($spec)) { return $obj }
   }
   die "Couldn't figure out what to do with ${spec}";
 }
 
+sub new_remote {
+  my ($self, @args) = @_;
+  Object::Remote::Handle->new(
+    connection => $self, @args
+  )->proxy;
+}
+
 sub register_remote {
   my ($self, $remote) = @_;
   weaken($self->remote_objects_by_id->{$remote->id} = $remote);