summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--lib/githubexplorer.pm12
-rw-r--r--lib/githubexplorer/Repository.pm1
-rw-r--r--lib/githubexplorer/Schema/Result/Fork.pm17
3 files changed, 16 insertions, 14 deletions
diff --git a/lib/githubexplorer.pm b/lib/githubexplorer.pm
index 67e9e25..4fc5aa5 100644
--- a/lib/githubexplorer.pm
+++ b/lib/githubexplorer.pm
@@ -6,7 +6,8 @@ use githubexplorer::Schema;
 use githubexplorer::Gexf;
 use IO::All;
 
-with qw/githubexplorer::Profile githubexplorer::Repository/;
+with qw/githubexplorer::Profile githubexplorer::Repository
+githubexplorer::Network/;
 
 has seed => (
     isa      => 'ArrayRef',
@@ -72,4 +73,13 @@ sub gen_graph {
     $xml > io('crawl.gexf');
 }
 
+sub graph_repo {
+    my $self = shift;
+    $self->_connect unless $self->has_schema;
+    my $repos = $self->schema->resultset('Repositories')->search({fork => 0});
+    while ( my $r = $repos->next ) {
+        $self->fetch_network($r);
+    }
+}
+
 1;
diff --git a/lib/githubexplorer/Repository.pm b/lib/githubexplorer/Repository.pm
index 664d727..035450a 100644
--- a/lib/githubexplorer/Repository.pm
+++ b/lib/githubexplorer/Repository.pm
@@ -2,7 +2,6 @@ package githubexplorer::Repository;
 use 5.010;
 use Moose::Role;
 use Net::GitHub::V2::Repositories;
-use YAML::Syck;
 
 sub fetch_repositories {
     my ( $self, $profile ) = @_;
diff --git a/lib/githubexplorer/Schema/Result/Fork.pm b/lib/githubexplorer/Schema/Result/Fork.pm
index 195c1f9..2a798eb 100644
--- a/lib/githubexplorer/Schema/Result/Fork.pm
+++ b/lib/githubexplorer/Schema/Result/Fork.pm
@@ -6,23 +6,16 @@ __PACKAGE__->load_components(qw/Core/);
 __PACKAGE__->table('fork');
 
 __PACKAGE__->add_columns(
-    profile_origin => { data_type => 'int', },
-    profile_dest   => { data_type => 'int' },
-    repo_origin    => { data_type => 'int' },
-    repo_dest      => { data_type => 'int' },
+    profile => { data_type => 'int', },
+    repos   => { data_type => 'int' },
 );
 
-__PACKAGE__->set_primary_key(
-    qw/repo_origin repo_dest profile_origin profile_dest/ );
+__PACKAGE__->set_primary_key(qw/repos profile/);
 
-__PACKAGE__->belongs_to( 'profile_origin',
-    'githubexplorer::Schema::Result::Profiles' );
-__PACKAGE__->belongs_to( 'profile_dest',
+__PACKAGE__->belongs_to( 'profile',
     'githubexplorer::Schema::Result::Profiles' );
 
-__PACKAGE__->belongs_to( 'repo_origin',
-    'githubexplorer::Schema::Result::Repositories' );
-__PACKAGE__->belongs_to( 'repo_dest',
+__PACKAGE__->belongs_to( 'repos',
     'githubexplorer::Schema::Result::Repositories' );
 
 1;