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:
30
tests/Protocol.html
Normal file
30
tests/Protocol.html
Normal 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>
|
||||
Reference in New Issue
Block a user