+ my $existing_tower_ap;
+ my $tower_name = $tower_sector->{Hash}->{towername};
+ $tower_name =~ s/\s/_/g;
+
+ #check if tower has been set up as an access point.
+ $existing_tower_ap = $self->api_get_accesspoint($tower_name) unless $self->{'__saisei_error'};;
+
+ #if tower does not exist as an access point create it.
+ $self->api_create_accesspoint(
+ $tower_name,
+ $tower_sector->{Hash}->{toweruprate},
+ $tower_sector->{Hash}->{towerdownrate}
+ ) unless $existing_tower_ap;
+
+ my $existing_sector_ap;
+ my $sector_name = $tower_sector->{Hash}->{sectorname};
+ $sector_name =~ s/\s/_/g;
+
+ #check if sector has been set up as an access point.
+ $existing_sector_ap = $self->api_get_accesspoint($sector_name);
+
+ #if sector does not exist as an access point create it.
+ $self->api_create_accesspoint(
+ $sector_name,
+ $tower_sector->{Hash}->{sectoruprate},
+ $tower_sector->{Hash}->{sectordownrate},
+ $tower_name,
+ ) unless $existing_sector_ap;
+
+ # Attach newly created sector to it's tower.
+ $self->api_modify_accesspoint($sector_name, $tower_name) unless ($self->{'__saisei_error'} || $existing_sector_ap);
+
+ # set access point to existing one or newly created one.
+ my $accesspoint = $existing_sector_ap ? $existing_sector_ap : $self->api_get_accesspoint($sector_name);
+
+ ## tie host to user add sector name as access point.
+ $self->api_add_host_to_user(
+ $user->{collection}->[0]->{name},
+ $rateplan->{collection}->[0]->{name},
+ $svc_broadband->{Hash}->{ip_addr},
+ $accesspoint->{collection}->[0]->{name},
+ ) unless $self->{'__saisei_error'};
+ }