Feature/oasis refactor phase3 step2 #368
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue
Closes #364
Description
A summary description for what the PR achieves.
Major changes:
graph
andplace
place
, abstract out services of this package into interfaceAfter refactoring, here is new hierarchy
directory level
. ├── entrypoint ├── graph │ ├── chargingstrategy │ └── stationgraph ├── internal │ ├── entity │ ├── mock │ ├── osrmhelper │ ├── resourcemanager │ └── searchhelper ├── place │ ├── iterator │ │ ├── clouditerator │ │ ├── iteratoralg │ │ ├── iteratortype │ │ └── localiterator │ ├── spatialindexer │ │ ├── placeloader │ │ ├── ranker │ │ └── s2indexer │ ├── topograph │ └── topoquerier └── solution └── selectionstrategy
file level
. ├── entrypoint │ ├── http_handler.go │ └── http_response_formator.go ├── graph │ ├── chargingstrategy │ │ ├── doc.go │ │ ├── fake_charge_strategy.go │ │ ├── simple_charge_strategy.go │ │ ├── simple_charge_strategy_test.go │ │ └── strategy_interface.go │ ├── doc.go │ └── stationgraph │ ├── dijkstra.go │ ├── dijkstra_test.go │ ├── doc.go │ ├── edge.go │ ├── edge_2_weight.go │ ├── edge_2_weight_test.go │ ├── graph_interface.go │ ├── graph_mock.go │ ├── node.go │ ├── node_container.go │ ├── node_container_test.go │ ├── node_graph.go │ ├── node_graph_test.go │ ├── priority_queue.go │ ├── priority_queue_test.go │ ├── query_heap.go │ ├── query_heap_test.go │ ├── station_graph.go │ └── station_graph_test.go ├── internal │ ├── entity │ │ ├── doc.go │ │ ├── place_entity.go │ │ └── solution_entity.go │ ├── mock │ │ ├── doc.go │ │ ├── osrm_table.go │ │ ├── spatialfinder_type.go │ │ ├── spatialindexer_finder.go │ │ └── spatialindexer_pointiterator.go │ ├── osrmhelper │ │ └── helper.go │ ├── resourcemanager │ │ └── resource_manager.go │ └── searchhelper │ └── helper.go ├── place │ ├── doc.go │ ├── iterator │ │ ├── clouditerator │ │ │ ├── basic_iterator.go │ │ │ ├── basic_iterator_test.go │ │ │ ├── cloud_based_iterator_impl.go │ │ │ ├── dest_iterator.go │ │ │ ├── dest_iterator_mock.go │ │ │ ├── dest_iterator_test.go │ │ │ ├── doc.go │ │ │ ├── low_energy_location_iterator.go │ │ │ ├── low_energy_location_iterator_mock.go │ │ │ ├── low_energy_location_iterator_test.go │ │ │ ├── orig_iterator.go │ │ │ ├── orig_iterator_mock.go │ │ │ └── orig_iterator_test.go │ │ ├── doc.go │ │ ├── iterator_factory.go │ │ ├── iteratoralg │ │ │ ├── dest_iterator.go │ │ │ ├── orig_iterator.go │ │ │ ├── querier_impl_by_stationfinder.go │ │ │ ├── querier_impl_by_stationfinder_test.go │ │ │ ├── stations_iterator_alg.go │ │ │ └── stations_iterator_alg_test.go │ │ ├── iteratortype │ │ │ ├── const.go │ │ │ ├── type.go │ │ │ └── type_test.go │ │ └── localiterator │ │ ├── basic_local_iterator.go │ │ ├── basic_local_iterator_test.go │ │ ├── dest_station_local_iterator.go │ │ ├── doc.go │ │ ├── local_based_iterator_impl.go │ │ ├── low_energy_location_local_iterator.go │ │ └── orig_local_iterator.go │ ├── iterator_interface.go │ ├── spatial_querier_interface.go │ ├── spatialindexer │ │ ├── doc.go │ │ ├── placeloader │ │ │ ├── loader.go │ │ │ ├── place_format.go │ │ │ └── sample_input.json │ │ ├── ranker │ │ │ ├── doc.go │ │ │ ├── osrm_ranker.go │ │ │ ├── osrm_ranker_test.go │ │ │ ├── rank_agent.go │ │ │ ├── rank_agent_test.go │ │ │ ├── rank_by_great_circle_distance_impl.go │ │ │ ├── rank_by_osrm_shortest_path_impl.go │ │ │ ├── rank_by_osrm_shortest_path_impl_test.go │ │ │ ├── ranker_factory.go │ │ │ ├── simple_ranker.go │ │ │ └── simple_ranker_test.go │ │ └── s2indexer │ │ ├── builder.go │ │ ├── builder_test.go │ │ ├── dumper.go │ │ ├── dumper_test.go │ │ ├── indexer.go │ │ ├── spatial_query.go │ │ └── spatial_query_test.go │ ├── topo_querier_interface.go │ ├── topograph │ │ ├── builder.go │ │ ├── builder_test.go │ │ ├── doc.go │ │ ├── dumper.go │ │ ├── dumper_test.go │ │ ├── memory_topo_graph.go │ │ ├── memory_topo_graph_mock.go │ │ ├── statistic.go │ │ └── statistic_test.go │ └── topoquerier │ ├── doc.go │ ├── place_topo_querier.go │ └── place_topo_querier_test.go └── solution ├── doc.go ├── entity.go ├── generator_impl.go ├── interface.go ├── selection_strategy.go ├── selectionstrategy │ ├── doc.go │ ├── has_enough_energy.go │ ├── has_enough_energy_test.go │ ├── reachable_by_multiple_charge.go │ ├── reachable_by_multiple_charge_test.go │ ├── reachable_by_single_charge.go │ └── reachable_by_single_charge_test.go └── status_code.go
Tasklist
Lua
changesPrerequirements