[core] Adjust layer source properties to better reflect reality

* Layer source ID is immutable; must be provided to the constructor
* Layer source layer is mutable
* Layers with GeoJSON sources do not have a source layer

While here, make Layer::copy impl-private.
This commit is contained in:
John Firebaugh
2016-06-22 12:31:49 -07:00
parent 089c4e413f
commit c4e4cc5081
24 changed files with 176 additions and 182 deletions

View File

@@ -276,8 +276,8 @@ TEST(Source, VectorTileCorrupt) {
};
// Need to have at least one layer that uses the source.
auto layer = std::make_unique<LineLayer>("id");
layer->setSource("source", "water");
auto layer = std::make_unique<LineLayer>("id", "source");
layer->setSourceLayer("water");
test.style.addLayer(std::move(layer));
Tileset tileset;