Statistics
| Revision:

gvsig-vectorediting / org.gvsig.vectorediting / trunk / org.gvsig.vectorediting / org.gvsig.vectorediting.lib / org.gvsig.vectorediting.lib.prov / org.gvsig.vectorediting.lib.prov.polyline / src / main / java / org / gvsig / vectorediting / lib / prov / polyline / PolylineEditingProviderFactory.java @ 58

History | View | Annotate | Download (2.54 KB)

1
/*
2
 * Copyright 2014 DiSiD Technologies S.L.L. All rights reserved.
3
 * 
4
 * Project  : DiSiD org.gvsig.vectorediting.lib.prov.polyline 
5
 * SVN Id   : $Id$
6
 */
7
package org.gvsig.vectorediting.lib.prov.polyline;
8

    
9
import org.gvsig.fmap.geom.Geometry;
10
import org.gvsig.tools.ToolsLocator;
11
import org.gvsig.tools.dynobject.DynClass;
12
import org.gvsig.tools.dynobject.DynObject;
13
import org.gvsig.tools.service.spi.AbstractProviderFactory;
14
import org.gvsig.tools.service.spi.Provider;
15
import org.gvsig.tools.service.spi.ProviderServices;
16
import org.gvsig.vectorediting.lib.api.EditingServiceInfo;
17
import org.gvsig.vectorediting.lib.api.EditingServiceParameter;
18
import org.gvsig.vectorediting.lib.spi.DefaultEditingServiceinfo;
19
import org.gvsig.vectorediting.lib.spi.EditingProviderFactory;
20

    
21

    
22
public class PolylineEditingProviderFactory extends AbstractProviderFactory  implements EditingProviderFactory {
23

    
24
  public final static String PROVIDER_NAME = "layer-insert-polyline";
25

    
26
  public final static String PROVIDER_DESCRIPTION = "Inserts a polyline on the view";
27

    
28
  public static final String PROVIDER_NAME_PARAMS = "PolylineParams";
29

    
30
  public static final String PROVIDER_NAME_PARAMS_DESCRIPTION = "";
31
  
32
  private DynClass dynclass;
33
  
34
  public String getName() {
35
    return PROVIDER_NAME;
36
  }
37
  
38
  public DynObject createParameters() {
39
    DynObject dynobject = ToolsLocator.getDynObjectManager().createDynObject(
40
        dynclass);
41

    
42
    dynobject.setDynValue(PROVIDER_NAME_FIELD, PROVIDER_NAME);
43
    return dynobject;
44
  }
45

    
46
  public void initialize() {
47
    dynclass = ToolsLocator.getDynObjectManager().createDynClass(
48
        PROVIDER_NAME_PARAMS, PROVIDER_NAME_PARAMS_DESCRIPTION);
49

    
50
    dynclass.addDynFieldString(PROVIDER_NAME_FIELD);
51
    dynclass.addDynFieldObject(FEATURE_STORE_FIELD);
52

    
53
  }
54

    
55
  public EditingServiceInfo getServiceInfo() {
56
    EditingServiceInfo serviceInfo = new DefaultEditingServiceinfo(
57
        PROVIDER_NAME,
58
          "",
59
          true,
60
          null,
61
          null,
62
          new int[]{
63
            Geometry.TYPES.SURFACE,
64
            Geometry.TYPES.MULTISURFACE,
65
            Geometry.TYPES.CURVE,
66
            Geometry.TYPES.MULTICURVE});
67

    
68

    
69
      return serviceInfo;
70
  }
71

    
72
  public EditingServiceParameter getServiceParameterInfo() {
73
    // TODO Auto-generated method stub
74
    return null;
75
  }
76

    
77
  @Override
78
  protected Provider doCreate(DynObject parameters, ProviderServices services) {
79
    return new PolylineEditingProvider(services, parameters);
80
  }
81

    
82
  @Override
83
  protected DynClass createParametersDynClass() {
84
    // TODO Auto-generated method stub
85
    return null;
86
  }
87

    
88
}