Adding strategy and protocol base classes for better vector behavior. This just sets the common API for strategy and protocol. In general, a vector layer can have many strategies. A setLayer method gets called on each of these layers. When a layer is added to a map, any strategies on that layer get activated. When the layer is destroyed, any strategies get destroyed (this could be changed to deactivate for symmetry). A vector layer may also have a protocol. A protocol is typically constructed with a format. The layer doesn't need to know about the format. The protocol doesn't need to know about the layer. Strategies coordinate feature management for a layer. Specific strategies and protocols to follow. r=crschmidt (closes #1646)

git-svn-id: http://svn.openlayers.org/trunk/openlayers@7650 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
Tim Schaub
2008-07-31 21:27:35 +00:00
parent 5191dac459
commit 360d7412f0
7 changed files with 341 additions and 1 deletions

30
tests/Protocol.html Normal file
View File

@@ -0,0 +1,30 @@
<html>
<head>
<script src="../lib/OpenLayers.js"></script>
<script type="text/javascript">
function test_initialize(t) {
t.plan(2);
var options = {};
var protocol = new OpenLayers.Protocol(options);
t.ok(protocol instanceof OpenLayers.Protocol,
"new OpenLayers.Protocol returns object" );
t.eq(protocol.options, options, "constructor sets this.options");
}
function test_destroy(t) {
t.plan(1);
var protocol = new OpenLayers.Protocol({
format: 'foo'
});
protocol.destroy();
t.eq(protocol.format, null, "destroy nullify protocol.format");
}
</script>
</head>
<body>
</body>
</html>