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.symmetry / src / main / java / org / gvsig / vectorediting / lib / prov / symmetry / SymmetryEditingProviderFactory.java @ 82

History | View | Annotate | Download (2.21 KB)

1
/*
2
 * Copyright 2014 DiSiD Technologies S.L.L. All rights reserved.
3
 *
4
 * Project  : DiSiD org.gvsig.vectorediting.lib.prov.symmetry
5
 * SVN Id   : $Id$
6
 */
7
package org.gvsig.vectorediting.lib.prov.symmetry;
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
public class SymmetryEditingProviderFactory extends AbstractProviderFactory
22
    implements EditingProviderFactory {
23

    
24
  public static final String PROVIDER_NAME = "symmetry";
25

    
26
  private final static String PROVIDER_DESCRIPTION = "Creates symmetric geometries from selection";
27

    
28
  public void initialize() {
29

    
30
  }
31

    
32
  public EditingServiceInfo getServiceInfo() {
33
    EditingServiceInfo serviceInfo = new DefaultEditingServiceinfo(
34
        PROVIDER_NAME, "", true, null, null, new int[] { Geometry.TYPES.POINT,
35
            Geometry.TYPES.MULTIPOINT, Geometry.TYPES.SURFACE,
36
            Geometry.TYPES.MULTISURFACE, Geometry.TYPES.CURVE,
37
            Geometry.TYPES.MULTICURVE });
38

    
39
    return serviceInfo;
40
  }
41

    
42
  public EditingServiceParameter getServiceParameterInfo() {
43
    // TODO Auto-generated method stub
44
    return null;
45
  }
46

    
47
  @Override
48
  protected Provider doCreate(DynObject parameters, ProviderServices services) {
49
    return new SymmetryEditingProvider(services, parameters);
50
  }
51

    
52
  public DynObject createParameters() {
53
    DynObject dynobject = super.createParameters();
54
    dynobject.setDynValue(PROVIDER_NAME_FIELD, PROVIDER_NAME);
55
    return dynobject;
56
  }
57

    
58
  @Override
59
  protected DynClass createParametersDynClass() {
60
    DynClass dynclass = ToolsLocator.getDynObjectManager().createDynClass(
61
        PROVIDER_NAME, PROVIDER_DESCRIPTION);
62

    
63
    dynclass.addDynFieldString(PROVIDER_NAME_FIELD);
64
    dynclass.addDynFieldObject(FEATURE_STORE_FIELD);
65

    
66
    return dynclass;
67
  }
68

    
69
}