Revision 8710

View differences:

tags/BN70/extensions/extArcims/.project
1
<?xml version="1.0" encoding="UTF-8"?>
2
<projectDescription>
3
	<name>extArcims</name>
4
	<comment></comment>
5
	<projects>
6
	</projects>
7
	<buildSpec>
8
		<buildCommand>
9
			<name>org.eclipse.jdt.core.javabuilder</name>
10
			<arguments>
11
			</arguments>
12
		</buildCommand>
13
	</buildSpec>
14
	<natures>
15
		<nature>org.eclipse.jdt.core.javanature</nature>
16
	</natures>
17
</projectDescription>
0 18

  
tags/BN70/extensions/extArcims/config/text.properties
1
abstract=Resumen
2
accept=Aceptar
3
add_again_question=?A?adir de nuevo?
4
add_all=A?adir todas
5
add=A?adir
6
ancho_alto=Ancho X Alto
7
anterior=Anterior
8
apply=Aplicar
9
arcims_properties=Propiedades ArcIMS
10
arcims_legend_error=Error al procesar la leyenda
11
arcims_server_status_col_name=Estado
12
arcims_server_type_col_name=Tipo
13
arcims_remote_not_found=Fichero remoto no encontrado
14
arcims_server_error=Error en el servidor ArcIMS
15
arcims_catalog_error=Error al recibir el cat?logo del servidor ArcIMS
16
arcims_extent_error=Error al obtener la extensi?n del servicio ArcIMS
17
arcims_no_server=No se ha hallado un servidor ArcIMS v?lido
18
arcims_no_features=No se han encontrado geometr?as
19
arcims_server_timeout=Alcanzado m?ximo tiempo de espera de respuesta del servidor ArcIMS
20
array_error=Error en el tama?o de los arrays
21
available_layers=Capas disponibles
22
available_services=Servicios disponibles
23
bands=Bandas
24
cancel=Cancelar
25
cannotReproject=No se puede reproyectar este sistema de coordenadas
26
cant_connect=No ha sido posible realizar la conexi?n
27
capas=Capas
28
change_server=Cambiar Servidor
29
change_service=Cambiar Servicio
30
choose_image_format=Elija formato de imagen
31
clear=Limpiar
32
close=Cerrar
33
column_not_found=No se encontr? la columna
34
conectar=Conectar
35
connect_error=Error conectando
36
coor_geograficas=Coor. Geograficas
37
coord_system=Sistema de coordenadas
38
country=Pa?s
39
covered_extension=Extensi?n
40
current_scale=Escala actual
41
current=actual
42
data_origin=Origen de datos
43
decimal_degrees=Grados decimales
44
default=Por defecto
45
defined_by_user=Definido por el usuario
46
description=Descripci?n
47
desde=Desde
48
dimension=Dimensi?n
49
dimensiones=Dimensiones
50
eliminar_extremos=Eliminar Extremos
51
enter_new_layer_name=Introduzca el nombre de la nueva capa
52
error=Error
53
en_language=Ingl?s
54
envelope=Extensi?n
55
es_country=Espa?a
56
es_language=Espa?ol
57
Escala=Escala
58
estilos=Estilos
59
extents_no_coincidentes=El extent de la imagen seleccionada no coincide con la imagen de origen.
60
featureclass=Vectorial
61
featureserver=Servicio vectorial
62
feet=Pies
63
fichero_existe=El fichero seleccionado ya existe como banda de la capa
64
Fichero=File
65
fit_ArcIms_layer=Ajustar capa ArcIMS
66
format=Formato
67
formatos=Formatos
68
from=Desde
69
group_layers_option=Agrupaci?n de capas
70
group_layers=Agrupar capas
71
image=Imagen
72
imageserver=Servicio de im?genes
73
in=in
74
info=Informaci?n
75
interval=Intervalo
76
intervalo=Intervalo
77
introduzca_intervalo_deseado=Introduzca el intervalo deseado
78
language=Idioma
79
layer_abstract=Resumen
80
layer_name=Nombre de la capa
81
layer_not_queriable=El layer no es interrogable
82
layer_scale_status=Estado de los l?mites de escala
83
layer_title=T?tulo de la capa
84
layer_was_already_added=La capa ya se hab?a a?adido
85
layer=Capa
86
layers=Capas
87
legend=Leyenda
88
line=L?nea
89
lineal_directo=Lineal Directo
90
location=Ubicaci?n
91
max_no_of_pixels=N?mero m?ximo de p?xels
92
max_scale=Escala m?x
93
meters=Metros
94
min_scale=Escala m?n
95
move_layer_down=Mover abajo
96
move_layer_up=Mover arriba
97
muestra=Muestra
98
multiple_value=Valor m?ltiple
99
multiples_intervalos=M?ltiples Intervalos
100
name=Nombre
101
new_layer_name=Nombre de la nueva capa
102
next=Siguiente
103
no_layers_found=No hay capas disponibles
104
NO=NO
105
none_selected=Ninguno seleccionado
106
not_available=No disponible
107
not_visible=No visible
108
num_bandas=N\u00FAmero de bandas
109
ok=Aceptar
110
opacidad=Opacidad
111
period=Periodo
112
point=Punto
113
polygon=Pol?gono
114
previous=Anterior
115
properties=Propiedades
116
property=Propiedad
117
propiedades_raster=Propiedades del r\u00E1ster
118
raster_layer=Capa raster
119
raster=Raster
120
realce=Realce
121
recorte_colas=Recorte de Colas
122
recorte=recorte
123
remove_all=Quitar todas
124
remove=Quitar
125
repeated_layer_was_not_added=No se a?adi? la capa repetida
126
retry=Reintentar
127
scale_limits_status=Estado de los l?mites de escala
128
scale_limits=L?mites de escala
129
the_scale=Escala
130
seleccionar_srs=Seleccionar SRS
131
select_formats=Seleccionar formatos
132
select_layers=Seleccionar capas
133
selected_dimensions=Dimensiones Seleccionadas
134
selected_from_list=Seleccionado de la lista
135
selected_layers=Capas seleccionadas
136
selected_themes=Temas seleccionados
137
server_abstract=Sumario
138
server_cant_render_layers=Este servidor no puede renderizar estas capas juntas.\nPruebe a hacer peticiones separadas para cada capa.
139
server_has_no_services=El servidor no ofrece ning?n servicio
140
server_provides_no_srs__scale_data_may_be_wrong=El servidor no proporciona sistema de coordenadas. La informaci?n sobre escalas puede ser err?nea.
141
server_doesnt_support_selected_image_format=El servidor no proporciona im?genes en el formato seleccionado
142
server_timeout=Alcanzado m?ximo tiempo de espera de respuesta
143
server_title=T?tulo
144
server_type=Tipo de servidor
145
server_version=Versi?n del servidor
146
server=Servidor
147
service_does_not_exist=Servicio no disponible
148
service_info=Informaci?n del servicio
149
service_name=Nombre del servicio
150
servicename_selection_mode=Selecci?n del nombre del servicio
151
service_type=Tipo de servicio
152
service_type_not_supported=Tipo de servicio no soportado por el cliente
153
service=Servicio
154
set=Establecer
155
settings_editor=Editor de ajustes
156
settings=Ajustes
157
show_layer_names=Mostrar nombres
158
show_layer_ids=Mostrar ID de las capas
159
siguiente=Siguiente
160
sin_realce=Sin Realce
161
single_value=Valor simple
162
status=Estado
163
style=Estilo
164
the_scale=Escala
165
this_layer_was_already_added=Esta capa ya se hab?a a?adido
166
tipo_dato=Tipo de Dato
167
to=Hasta
168
tooltips_enabled=Tool tips activas
169
transparencia=Transparencia
170
type=Tipo
171
unable_to_findout_service_type=No se pudo determinar el tipo de servicio
172
unable_to_findout_server_version=No se pudo determinar la versi?n del servidor
173
units=Unidades
174
unknown_response_format=Formato de respuesta desconocido
175
update_catalog=Refrescar lista de servicios
176
us_country=Estados Unidos
177
usar_rango=Usa un rango
178
Valor_azul=Valor Azul
179
valor_pixel=Valor de pixel
180
Valor_rojo=Valor Rojo
181
Valor_verde=Valor Verde
182
value_not_found=No se encontr? el valor
183
value=Valor
184
vector_layer=Capa vectorial
185
vector_type=Tipo vectorial
186
vectorial=Vectorial
187
version_conflict=Conflicto de versiones
188
version=Versi?n
189
view=Vista
190
visible=Visible
191
warning=Aviso
192
wrong_url=Direcci?n URL no v?lida
193
xmax=X m\u00E1xima
194
xmin=X m\u00EDnima
195
xrange=Rango en X
196
YES=S?
197
ymax=Y m\u00E1xima
198
ymin=Y m\u00EDnima
199
yrange=Rango en Y
0 200

  
tags/BN70/extensions/extArcims/config/text_en.properties
1
abstract=Abstract
2
accept=Accept
3
add_again_question=Add again?
4
add_all=Add all
5
add=Add
6
ancho_alto=Width x Height
7
anterior=Previous
8
apply=Apply
9
arcims_properties=ArcIMS properties
10
arcims_server_status_col_name=Status
11
arcims_server_type_col_name=Type
12
arcims_remote_not_found=Remote file not found
13
arcims_server_error=ArcIMS server error
14
arcims_catalog_error=Error while retrieving ArcIMS catalog 
15
arcims_extent_error=Error while retrieving ArcIMS service extent
16
arcims_no_server=Not a valid ArcIMS server
17
arcims_no_features=No geometries found
18
arcims_server_timeout=ArcIMS server's timeout
19
array_error=Array length error
20
available_layers=Available layers
21
available_services=Available services
22
bands=Bands
23
cancel=Cancel
24
cannotReproject=Unable to reproject this coordinate system
25
cant_connect=Unable to perform the connection
26
capas=Layers
27
change_server=Change server
28
change_service=Change service
29
choose_image_format=Choose image format
30
clear=Clear
31
close=Close
32
column_not_found=Column not found
33
conectar=Connect
34
connect_error=Connect error
35
coor_geograficas=Geographic coordinates
36
coord_system=Coordinate system
37
country=Country
38
covered_extension=Covered envelope
39
current_scale=Current scale
40
current=Current
41
data_origin=Data source
42
decimal_degrees=Decimal degrees
43
default=Default
44
defined_by_user=User defined
45
description=Description
46
desde=From
47
dimension=Dimension
48
dimensiones=Dimensions
49
eliminar_extremos=Remove ends
50
en_language=English
51
enter_new_layer_name=Enter new layer name
52
error=Error
53
envelope=Envelope
54
es_country=Spain
55
es_language=Spanish
56
Escala=Scale
57
estilos=Styles
58
extents_no_coincidentes=Selected image's extent does not match original image's extent
59
featureclass=Feature class
60
featureserver=Features service
61
feet=Feet
62
fichero_existe=Selected file already exists
63
Fichero=File
64
fit_ArcIms_layer=ArcIMS layer settings
65
format=Format
66
formatos=Formats
67
from=From
68
group_layers_option=Layer grouping option
69
group_layers=Group layers
70
image=Image
71
imageserver=Raster service
72
in=in
73
info=Information
74
interval=Interval
75
intervalo=Interval
76
introduzca_intervalo_deseado=Enter interval
77
language=Language
78
layer_abstract=Abstract
79
layer_name=Layer name
80
layer_not_queriable=Layer is not queriable
81
layer_scale_status=Layer scale status
82
layer_title=Layer title
83
layer_was_already_added=Layer was already added
84
layer=Layer
85
layers=Layers
86
legend=Legend
87
line=Line
88
location=Location
89
max_no_of_pixels=Max. number of pixels
90
max_scale=Max. scale
91
meters=Meters
92
min_scale=Min. scale
93
move_layer_down=Move down
94
move_layer_up=Move up
95
muestra=Sample
96
multiple_value=Multiple value
97
multiples_intervalos=Multiple intervals
98
name=Name
99
new_layer_name=New layer's name
100
next=Next
101
no_layers_found=No available layers found
102
NO=NO
103
none_selected=None selected
104
not_available=Not available
105
not_visible=Not visible
106
num_bandas=Band count
107
ok=OK
108
opacidad=Opacity
109
period=Perios
110
point=Ponit
111
polygon=Polygon
112
previous=Previous
113
properties=Properties
114
property=Property
115
propiedades_raster=Raster properties
116
raster_layer=Raster layer
117
raster=Raster
118
realce=Enhancement
119
recorte_colas=Tail trimming
120
recorte=Trimming
121
remove_all=Remove all
122
remove=Remove
123
retry=Retry
124
scale_limits_status=Scale limits status
125
scale_limits=Scale limits
126
scale=Scale
127
seleccionar_srs=SRS selection
128
select_formats=Format selection
129
select_layers=Layer selection
130
selected_dimensions=Selected dimensions
131
selected_from_list=Selected from list
132
selected_layers=Selected layers
133
selected_themes=Selected themes
134
server_abstract=Abstract
135
server_cant_render_layers=Server cannot renderize layers together.\nTry one request per layer
136
server_has_no_services=Server provides no services
137
server_provides_no_srs__scale_data_may_be_wrong=Server provides no SRS. Scale information might be inaccurate
138
server_doesnt_support_selected_image_format=Server does not support selected image format
139
server_timeout=ArcIMS server timeout
140
server_title=Title
141
server_type=Server type
142
server_version=Server version
143
service_type_not_supported=Service type not supported by the client
144
server=Server
145
service_does_not_exist=Service not available
146
service_info=Service information
147
service_name=Service name
148
servicename_selection_mode=Service name selection mode
149
service_type=Service type
150
service=Service
151
set=Set
152
settings_editor=Settings editor
153
settings=Setings
154
show_layer_names=Show layer names
155
show_layer_ids=Show layer IDs
156
siguiente=Next
157
sin_realce=Without enhancement
158
single_value=Single value
159
status=Status
160
style=Style
161
the_scale=Scale
162
this_layer_was_already_added=This layer was already added
163
tipo_dato=Data type
164
to=To
165
tooltips_enabled=Tool tips enabled
166
transparencia=Transparency
167
type=Type
168
unable_to_findout_service_type=Unable to find out service type
169
unable_to_findout_server_version=unable to find out server version
170
units=Units
171
unknown_response_format=Unknown response format
172
update_catalog=Override services list
173
us_country=United States
174
usar_rango=Use a range
175
Valor_azul=Blue value
176
valor_pixel=Pixel value
177
Valor_rojo=Red value
178
Valor_verde=Green value
179
value_not_found=Value not found
180
value=Value
181
vectorial=Vector
182
vector_layer=Vector layer
183
vector_type=Vector type
184
version_conflict=Version conflict
185
version=Version
186
view=View
187
visible=Visible
188
warning=Warning
189
wrong_url=Wrong Url
190
xmax=Max X
191
xmin=Min X
192
xrange=X range
193
YES=YES
194
ymax=Y Max
195
ymin=Y Min
196
yrange=Y range
0 197

  
tags/BN70/extensions/extArcims/config/text_ca.properties
1
abstract=Resum
2
accept=Acceptar
3
add_again_question=?Afegir de nou?
4
add_all=Afegir totes
5
add=Afegir
6
anterior=Anterior
7
apply=Aplicar
8
arcims_properties=Propietats ArcIMS
9
arcims_server_status_col_name=Estat
10
arcims_server_type_col_name=Tipus
11
arcims_remote_not_found=Fitxer remot no trobat
12
arcims_server_error=Error al servidor ArcIMS
13
arcims_catalog_error=Error al rebre el cat?leg del servidor ArcIMS
14
arcims_extent_error=Error al obtindre l'extensi? del servei ArcIMS
15
arcims_no_server=No s'ha trobat un servidor ArcIMS v?lid
16
arcims_no_features=No s'han trobat geometries
17
arcims_server_timeout=Arribat m?xim temps d'espera de resposta del servidor ArcIMS
18
available_layers=Capes disponibles
19
available_services=Serveis disponibles
20
bands=Bandes
21
cancel=Cancel?lar
22
cannotReproject=No es pot reprojectar aquest sistema de coordenades
23
cant_connect=No ha sigut possible realitzar la connexi?
24
capas=Capes
25
change_server=Canviar Servidor
26
change_service=Canviar Servei
27
clear=Netejar
28
close=Tancar
29
column_not_found=No s'ha trobat la columna
30
conectar=Connectar
31
connect_error=Error connectant
32
coor_geograficas=Coor. Geogr?fiques
33
coord_system=Sistema de coordenades
34
country=Pa?s
35
current_scale=Escala actual
36
data_origin=Origen de dades
37
default=Per defecte
38
defined_by_user=Definit per l'usuari
39
description=Descripci?
40
desde=Des de
41
dimension=Dimensi?
42
dimensiones=Dimensions
43
enter_new_layer_name=Introdu?sca el nom de la nova capa
44
error=Error
45
envelope=Extensi?
46
Escala=Escala
47
estilos=Estils
48
extents_no_coincidentes=La extensi? de la imatge seleccionada no coincideix amb la imatge d'origen.
49
featureclass=Vectorial
50
fichero_existe=El fitxer seleccionat ja existeix com a banda de la capa
51
Fichero=Fitxer
52
fit_ArcIms_layer=Ajustar capa ArcIMS
53
format=Format
54
formatos=Formats
55
from=Des de
56
image=Imatge
57
in=in
58
info=Informaci?
59
interval=Interval
60
intervalo=Interval
61
introduzca_intervalo_deseado=Introdu?sca l'interval desitjat
62
language=Idioma
63
layer_abstract=Resum
64
layer_name=Nom de la capa
65
layer_not_queriable=La capa no ?s interrogable
66
layer_scale_status=Estat dels l?mits d'escala
67
layer_title=T?tol de la capa
68
layer_was_already_added=La capa ja s'havia afegit
69
layer=Capa
70
layers=Capes
71
legend=Llegenda
72
line=L?nia
73
lineal_directo=Lineal Directe
74
location=Ubicaci?
75
max_no_of_pixels=Nombre m?xim de p?xels
76
max_scale=Escala m?x
77
min_scale=Escala m?n
78
move_layer_down=Moure baix
79
move_layer_up=Moure dalt
80
muestra=Mostra
81
multiple_value=Valor m?ltiple
82
multiples_intervalos=M?ltiples Intervals
83
name=Nom
84
new_layer_name=Nom de la nova capa
85
next=Seg?ent
86
no_layers_found=No hi ha capes disponibles
87
none_selected=Cap seleccionat
88
not_available=No disponible
89
not_visible=No visible
90
num_bandas=Nombre de bandes
91
ok=Acceptar
92
opacidad=Opacitat
93
period=Per?ode
94
point=Punt
95
polygon=Pol?gon
96
previous=Anterior
97
properties=Propietats
98
property=Propietat
99
propiedades_raster=Propietats del r?ster
100
raster_layer=Capa r?ster
101
realce=Real?ament
102
recorte_colas=Retall de Cues
103
recorte=retall
104
remove_all=Llevar totes
105
remove=Llevar
106
retry=Reintentar
107
scale_limits_status=Estat dels l?mits d'escala
108
scale=Escala
109
seleccionar_srs=Seleccionar SRS
110
select_formats=Seleccionar formats
111
select_layers=Seleccionar capes
112
selected_dimensions=Dimensions Seleccionades
113
selected_from_list=Seleccionat de la llista
114
selected_layers=Capes seleccionades
115
selected_themes=Temes seleccionats
116
server_abstract=Sumari
117
server_cant_render_layers=Aquest servidor no pot renderitzar aquestes capes juntes.\nProve de fer peticions separades per a cada capa.
118
server_has_no_services=El servidor no ofereix cap servei
119
server_provides_no_srs__scale_data_may_be_wrong=El servidor no proporciona sistema de coordenades. La informaci? sobre escales pot ser err?nia.
120
server_timeout=Arribat m?xim temps d'espera de resposta
121
server_title=T?tol
122
server_type=Tipus de servidor
123
server=Servidor
124
service_does_not_exist=Servei no disponible
125
service_info=Informaci? del servei
126
servicename_selection_mode=Selecci? del nom del servei
127
service_type=Tipus de servei
128
service_type_not_supported=Tipus de servei no suportat pel client.
129
service=Servei
130
set=Establir
131
settings_editor=Editor d'ajustos
132
settings=Ajustos
133
show_layer_names=Mostrar noms
134
show_layer_ids=Mostrar ID de les capes
135
siguiente=Seg?ent
136
sin_realce=Sense Real?ament
137
single_value=Valor simple
138
status=Estat
139
style=Estil
140
the_scale=Escala
141
this_layer_was_already_added=Aquesta capa ja s'havia afegit
142
tipo_dato=Tipus de Dada
143
to=Fins a
144
tooltips_enabled=Tool tips actives
145
transparencia=Transpar?ncia
146
type=Tipus
147
unable_to_findout_service_type=No s'ha pogut determinar el tipus de servei
148
unable_to_findout_server_version=No s'ha pogut determinar la versi? del servidor
149
units=Unitats
150
unknown_response_format=Format de resposta desconegut
151
update_catalog=Refrescar llista de serveis
152
usar_rango=Usa un rang
153
Valor_azul=Valor Blau
154
valor_pixel=Valor de p?xel
155
Valor_rojo=Valor Roig
156
Valor_verde=Valor Verd
157
value_not_found=No s'ha trobat el valor
158
value=Valor
159
vector_layer=Capa vectorial
160
vector_type=Tipus vectorial
161
version=Versi?
162
view=Vista
163
visible=Visible
164
warning=Av?s
165
wrong_url=Adre?a URL no v?lida
166
xmax=X m?xima
167
xmin=X m?nima
168
xrange=Rang en X
169
ymax=Y m?xima
170
ymin=Y m?nima
171
yrange=Rang en Y
0 172

  
tags/BN70/extensions/extArcims/config/config.xml
1
<?xml version="1.0" encoding="ISO-8859-1"?>
2
<plugin-config>
3
	<depends plugin-name="com.iver.cit.gvsig" />
4
	<libraries library-dir="."/>
5
	<resourceBundle name="text"/>
6
	<extensions>
7
		<extension class-name="es.prodevelop.cit.gvsig.arcims.extension.ArcimsClientModule"
8
			description="Support to access ArcIMS"
9
			active="true"
10
			priority="1">
11
		</extension>		
12
	</extensions>
13
</plugin-config>
0 14

  
tags/BN70/extensions/extArcims/images/down-arrow.png
1
?PNG
2

3

4
IHDRv???	pHYs???o?dnIDATx???;? P=G??????k;xA?!?$aIE?wW?!I??#?F?PE?E???J?S?:??5?kP??u??A?"N]??&?????A; ET?H?v?$\9N
5
?Bx?IEND?B`?
0 6

  
tags/BN70/extensions/extArcims/images/Thumbs.db
1
????>??	????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????	
2

3
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Root Entry???????? ?????@1????????????RCatalog?????????????2????*	
4

5
????9???? !"#$%&'()????+,-./012345678????:;????=>?@ABCDEFGH????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????F????JFIF``??C
6

7

8

9

10
??C		
11

12
??"??	
13
???}!1AQa"q2???#B??R??$3br?	
14
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz???????????????????????????????????????????????????????????????????????????	
15
???w!1AQaq"2?B????	#3R?br?
16
$4?%?&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz?????????????????????????????????????????????????????????????????????????????????????~?=???6W??ur\?G???e?i?0?-u]*?.?:I??H?A?# ?_;?D????a?o?Z???'??Csp??x??mFo??BC??
17
?B?[?????(??<??W??/???????Q??o. ?*?pPd?????0?H??@?4?h?N?i??j?\0D8Q??y$?I'$?I$?E?EP??``*?bI0L?forward.png,????JFIF``??C
18

19

20

21

22
??C		
23

24
??"??	
25
???}!1AQa"q2???#B??R??$3br?	
26
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz???????????????????????????????????????????????????????????????????????????	
27
???w!1AQaq"2?B????	#3R?br?
28
$4?%?&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz????????????????????????????????????????????????????????????????????????????S?$???Ch????_?w???Ck$Jr!??k1?????1N??T>&??N?????yy?`?U2?b2??+????x??j?	?M?l??}??W?$?6???p6?n0?Y???+?? |?|q??x??u?????-?????F(~x????(?P??(??t????JFIF``??C
29

30

31

32

33
??C		
34

35
??"??	
36
???}!1A3?????????????4????*?5????????<0????????????Qa"q2???#B??R??$3br?	
37
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz???????????????????????????????????????????????????????????????????????????	
38
???w!1AQaq"2?B????	#3R?br?
39
$4?%?&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz??????????????????????????????????????????????????????????????????????????????}O?~??????C5???????????s???c&??/?F?w?O
40
?.?????BY"S?l?Y???`?yo?5????~'???	?5o?}??????.A%wr????#|'?^?????$?y???M?}?@??h?n6?c???(?;?W?/?I?2?'???f??j?????>|M|??f????8?T? |?|q??x??u?????-?????F(~x????(?P??(???????JFIF``??C
41

42

43

44

45
??C		
46

47
??"??	
48
???}!1AQa"q2???#B??R??$3br?	
49
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz???????????????????????????????????????????????????????????????????????????	
50
???w!1AQaq"2?B????	#3R?br?
51
$4?%?&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz?????????????????????????????????????????????????????????????????????????????????????~?=???6W??ur\?G???O?O???_u?^{RKt?{qt???<Q??I?d$a?x<???D????a?o?Z???V??????x	>????J?'?+????????]&??SJ????}??fs?r????EU????7?yC??
52
(????~??g?l4-F???`?a???;J? );??9R+?_?v??-W??c???o?????c??2?1$#???$?MP??O????i-???U@8??(????bI0L?backward.png4?bI0L?fastbackward.png2?bI0L?fastforward.png2uY???arrowbutton.png$????JFIF``??C
53

54

55

56

57
??C		
58

59
??"??	
60
???}!1AQa"q2???#B??R??$3br?	
61
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz???????????????????????????????????????????????????????????????????????????	
62
???w!1AQaq"2?B????	#3R?br?
63
$4?%?&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz????????????????????????????????????????????????????????????????????????????????/?9,???#?
64
+?F?>?m
65
1????Pp\g???G???~1?<!?_????jz5?34|???,????85??l??+H???uM2[s*H??f??"U???E;?#????A??sxKB??<E??
66
??p?[i?;k;?s????Ibyb?$?I$?k?^???(?????
0 67

  
tags/BN70/extensions/extArcims/images/arrowbutton.png
1
?PNG
2

3

4
IHDR[??bIDATx?ctpp` 0^?p?x?9,@J[????@??z?$??0???h`ALS&t?M???????j?????P?O<@R?????q?"????IEND?B`?
0 5

  
tags/BN70/extensions/extArcims/images/up-arrow.png
1
?PNG
2

3

4
IHDRv???	pHYs???o?dZIDATx????PFg47#?MN?????* 	.?n?i?"9B?XA-????@+`??@??
5
Trx?=???'r.?|?J??|
6
???9?IEND?B`?
0 7

  
tags/BN70/extensions/extArcims/Cliente-ArcIMS.number
1
#Build Number for ANT. Do not edit!
2
#Mon Nov 13 16:36:46 CET 2006
3
build.number=70
0 4

  
tags/BN70/extensions/extArcims/javadoc.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2
<project default="javadoc">
3
    <target name="javadoc">
4
        <javadoc destdir="doc" access="private" source="1.4" use="true" notree="false" nonavbar="false" noindex="false" splitindex="true" author="true" version="true" nodeprecatedlist="false" nodeprecated="false" packagenames="es.prodevelop.cit.gvsig.arcims.fmap.datasource,es.prodevelop.cit.gvsig.arcims.gui.toc,es.prodevelop.cit.gvsig.arcims.gui.panels,es.prodevelop.cit.gvsig.arcims.gui.panels.utils,es.prodevelop.cit.gvsig.arcims.gui.dialogs,es.prodevelop.cit.gvsig.arcims.gui.wizards,es.prodevelop.cit.gvsig.arcims.extension,es.prodevelop.cit.gvsig.arcims.fmap.drivers,es.prodevelop.cit.gvsig.arcims.fmap.layers" sourcepath="src" classpath="../libFMap/lib/jmrsid-0.0.2.jar;../libFMap/lib/mysql-connector-java-3.1.7-bin.jar;../libFMap/lib/geojava.jar;../appgvSIG/lib/batik-xml.jar;../libFMap/lib/gt2-legacy.jar;../libFMap/lib/gt2-postgis.jar;../libFMap/lib/tar.jar;../extWMS/lib/remote-clients.jar;../libFMap/lib/driver-manager-1.0.jar;../fwAndami/lib/javaws.jar;../libFMap/lib/tempFileManager.jar;../appgvSIG/lib/batik-css.jar;../appgvSIG/lib/batik-util.jar;../libFMap/lib/jts-1.6.jar;../libFMap/lib/jmgeoraster.jar;../appgvSIG/lib/JimiProClasses.zip;../libFMap/lib/hsqldb.jar;../libRemoteServices/lib/kxml2.jar;../fwAndami/lib/iver-utiles.jar;../libFMap/lib/postgresql-74.213.jar;../fwAndami/lib/castor-0.9.5.3-xml.jar;../libFMap/lib/jogr.jar;../appgvSIG/lib/batik-bridge.jar;../appgvSIG/lib/batik-script.jar;../libFMap/lib/geoapi-2.0.jar;../libFMap/lib/units-0.01.jar;../appgvSIG/lib/itext-1.3.jar;../appgvSIG/lib/batik-svg-dom.jar;../appgvSIG/lib/batik-ext.jar;../libRemoteServices/bin;../fwAndami/lib/log4j-1.2.8.jar;../fwAndami/lib/xerces_2_5_0.jar;../appgvSIG/lib/batik-parser.jar;../appgvSIG/lib/batik-gvt.jar;../fwAndami/lib/xml-apis.jar;../appgvSIG/lib/batik-svggen.jar;../libFMap/lib/jgdal-0.1.0.jar;../libFMap/lib/gt2-main.jar;../fwAndami/bin;../libFMap/lib/batik-awt-util.jar;../appgvSIG/bin;../libFMap/lib/gdbms-0.8-SNAPSHOT.jar;../libFMap/bin;../appgvSIG/lib/pdf-transcoder.jar;../libFMap/lib/geotiff-jai.jar;../libFMap/lib/cms.jar;../libFMap/lib/jecwcompress-0.0.0.jar;../fwAndami/lib/crimson.jar;../appgvSIG/lib/jep-2.24.jar;../appgvSIG/lib/batik-awt-util.jar;../appgvSIG/lib/js.jar;../appgvSIG/lib/batik-swing.jar;../libFMap/lib/wkb4j-1.0-RC1.jar;../libArcIMS/bin;../appgvSIG/lib/batik-transcoder.jar;../fwAndami/lib/JUF-1.0.jar;../appgvSIG/lib/batik-gui-util.jar;../appgvSIG/lib/batik-dom.jar;../libFMap/lib/jecw-0.0.1.jar;../libFMap/lib/vecmath-1.3.jar;../libFMap/lib/postgis-jdbc-driver.jar;../appgvSIG/lib/batik-extension.jar;../fwAndami/lib/tempFileManager.jar"/>
5
    </target>
6
</project>
0 7

  
tags/BN70/extensions/extArcims/src/es/prodevelop/cit/gvsig/arcims/extension/ArcimsClientModule.java
1
package es.prodevelop.cit.gvsig.arcims.extension;
2

  
3
import java.io.File;
4
import java.net.MalformedURLException;
5
import java.net.URL;
6

  
7
import com.iver.andami.PluginServices;
8
import com.iver.andami.plugins.Extension;
9
import com.iver.cit.gvsig.About;
10
import com.iver.cit.gvsig.AddLayer;
11
import com.iver.cit.gvsig.project.documents.view.toc.gui.FPopupMenu;
12
import com.iver.utiles.extensionPoints.ExtensionPoints;
13
import com.iver.utiles.extensionPoints.ExtensionPointsSingleton;
14

  
15
import es.prodevelop.cit.gvsig.arcims.fmap.layers.FFeatureLyrArcIMS;
16
import es.prodevelop.cit.gvsig.arcims.fmap.layers.FFeatureLyrArcIMSCollection;
17
import es.prodevelop.cit.gvsig.arcims.fmap.layers.FRasterLyrArcIMS;
18
import es.prodevelop.cit.gvsig.arcims.gui.toc.ArcImsLayerScaleTocMenuEntry;
19
import es.prodevelop.cit.gvsig.arcims.gui.toc.ArcImsPropsTocMenuEntry;
20
import es.prodevelop.cit.gvsig.arcims.gui.toc.ArcImsRasterPropsTocMenuEntry;
21
import es.prodevelop.cit.gvsig.arcims.gui.wizards.ArcImsWizard;
22

  
23
/**
24
 * This class implements the extension to access ArcIMS servers.
25
 * 
26
 * @author jldominguez
27
 *
28
 */
29
public class ArcimsClientModule extends Extension {
30
	
31
	/**
32
     * This method initializes the extension. Adds the ArcIMS wizard
33
     * and the right-click popup menus to the gvSIG resources.
34
     */
35
    public void initialize() {
36
    	// must add menus and a new tab to the wizard
37
    	// to create an arcims layer
38
    	FPopupMenu.addEntry(new ArcImsPropsTocMenuEntry());
39
    	FPopupMenu.addEntry(new ArcImsRasterPropsTocMenuEntry());
40
    	FPopupMenu.addEntry(new ArcImsLayerScaleTocMenuEntry());
41
    	AddLayer.addWizard(ArcImsWizard.class);
42
    	
43
    	// about
44
        java.net.URL newurl = createResourceUrl("about/extarcims-about.html");
45
    	About claseAbout = (About) PluginServices.getExtension(com.iver.cit.gvsig.About.class);
46
        claseAbout.getAboutPanel().addAboutUrl("ArcIMS", newurl);
47
        
48
        // catalog
49
    	ExtensionPoints extensionPoints = ExtensionPointsSingleton.getInstance();
50
    	extensionPoints.add("CatalogLayers", "arcims_raster", FRasterLyrArcIMS.class);
51
    	extensionPoints.add("CatalogLayers", "arcims_vectorial", FFeatureLyrArcIMSCollection.class);
52
    }
53

  
54
    /**
55
     * This method is called when the extension's controls are used.
56
     * So far, the ArcIMS plugin does <i>not</i> add any controls.
57
     * 
58
     * @param actionCommand the control's string action commmad.
59
     * 
60
     */
61
    public void execute(String actionCommand) {
62
    }
63

  
64
    /**
65
     * This method is called to find out if the plugin's controls are
66
     * enabled or not. So far, the ArcIMS plugin does <i>not</i>
67
     * add any controls.
68
     *
69
     * @return <b>true</b> if controls must be enabled, <b>false</b> if not.
70
     */
71
    public boolean isEnabled() {
72
    	return false;
73
    }
74

  
75
    /**
76
     * This method is called to find out if the plugin's controls are
77
     * visible or not. So far, the ArcIMS plugin does <i>not</i>
78
     * add any controls.
79
     *
80
     * @return <b>true</b> if controls must be visible, <b>false</b> if not.
81
     */
82
    public boolean isVisible() {
83
    	return false;
84
    }
85
    
86
    private java.net.URL createResourceUrl(String path) {
87
		return getClass().getClassLoader().getResource(path);
88
	}
89

  
90
    
91
}
0 92

  
tags/BN70/extensions/extArcims/src/es/prodevelop/cit/gvsig/arcims/fmap/drivers/ArcImsVectorialAdapter.java
1
package es.prodevelop.cit.gvsig.arcims.fmap.drivers;
2

  
3
import java.awt.geom.Rectangle2D;
4
import java.io.IOException;
5

  
6
import org.gvsig.remoteClient.arcims.exceptions.ArcImsException;
7

  
8
import com.hardcode.driverManager.DriverLoadException;
9
import com.hardcode.gdbms.engine.data.DataSource;
10
import com.iver.cit.gvsig.fmap.core.IFeature;
11
import com.iver.cit.gvsig.fmap.core.IGeometry;
12
import com.iver.cit.gvsig.fmap.core.ShapeFactory;
13
import com.iver.cit.gvsig.fmap.drivers.DriverIOException;
14
import com.iver.cit.gvsig.fmap.layers.FBitSet;
15
import com.iver.cit.gvsig.fmap.layers.SelectableDataSource;
16
import com.iver.cit.gvsig.fmap.layers.VectorialAdapter;
17

  
18
public class ArcImsVectorialAdapter extends VectorialAdapter {
19

  
20
	private IFeature[] testArray;
21

  
22
	public ArcImsVectorialAdapter(FMapFeatureArcImsDriver drv) {
23
		setDriver(drv);
24
	}
25

  
26
	public IGeometry getShape(int index) throws DriverIOException {
27
		try {
28
			return getDriver().getShape(index);
29
		} catch (IOException e) {
30
			DriverIOException dioe = new DriverIOException(e.getMessage());
31
			throw dioe;
32
		}
33
	}
34

  
35
	public int getShapeCount() throws DriverIOException {
36
		try {
37
			return getDriver().getShapeCount();
38
		} catch (IOException e) {
39
			DriverIOException dioe = new DriverIOException(e.getMessage());
40
			throw dioe;
41
		}
42
	}
43

  
44
	public Rectangle2D getFullExtent() throws DriverIOException {
45
		try {
46
			return getDriver().getFullExtent();
47
		} catch (IOException e) {
48
			DriverIOException dioe = new DriverIOException(e.getMessage());
49
			throw dioe;
50
		}
51
	}
52

  
53
	public int getShapeType() throws DriverIOException {
54
		return getDriver().getShapeType();
55
	}
56

  
57
	/**
58
	 * This method is used when the data source is a proper database that needs
59
	 * initialization.
60
	 */
61
	public void start() throws DriverIOException {
62
		try {
63
			((FMapFeatureArcImsDriver) getDriver()).getRecordSet().start();
64
		} catch (com.hardcode.gdbms.engine.data.driver.DriverException e) {
65
			DriverIOException dioe = new DriverIOException(e.getMessage());
66
			throw dioe;
67
		}
68
	}
69

  
70
	/**
71
	 * This method is used when the data source is a proper database that needs
72
	 * to be closed after use.
73
	 */
74
	public void stop() throws DriverIOException {
75
		try {
76
			((FMapFeatureArcImsDriver) driver).getRecordSet().stop();
77
		} catch (com.hardcode.gdbms.engine.data.driver.DriverException e) {
78
			DriverIOException dioe = new DriverIOException(e.getMessage());
79
			throw dioe;
80
		}
81
	}
82

  
83
	public SelectableDataSource getRecordset() throws DriverLoadException {
84
		return ((FMapFeatureArcImsDriver) driver).getRecordSet();
85
	}
86

  
87
	public void requestFeatureAttributes(FBitSet fbs) throws ArcImsException {
88
		((FMapFeatureArcImsDriver) driver).requestFeatureAttributes(fbs);
89
		}
90
	
91

  
92
}
93

  
94
// public class ArcImsVectorialAdapter implements ReadableVectorial {
95
//
96
// private FMapFeatureArcImsDriver driver;
97
// private IGeometry[] testArray;
98
// private Random rnd = new Random(System.currentTimeMillis());
99
// private DataSource dataSource;
100
//
101
// public ArcImsVectorialAdapter() {
102
//	
103
// testArray = new IGeometry[10];
104
// for (int i=0; i<testArray.length; i++) {
105
// Rectangle2D.Double r = getRandomRect();
106
// GeneralPathX gp = new GeneralPathX(r);
107
// testArray[i] = ShapeFactory.createPolygon2D(gp);
108
// }
109
//	
110
// }
111
//
112
// private Double getRandomRect() {
113
// double x = -180.0 * rnd.nextDouble();
114
// double y = -90.0 * rnd.nextDouble();
115
// double w = 180.0 * rnd.nextDouble();
116
// double h = 90.0 * rnd.nextDouble();
117
// return new Rectangle2D.Double(x, y, w, h);
118
// }
119
//
120
// /**
121
// * This method is used when the data source is a proper database
122
// * that needs initialization.
123
// */
124
// public void start() throws DriverIOException {
125
// System.out.println("===> public void start()");
126
// // TODO Auto-generated method stub
127
// }
128
//
129
// /**
130
// * This method is used when the data source is a proper database
131
// * that needs to be closed after use.
132
// */
133
// public void stop() throws DriverIOException {
134
// System.out.println("===> public void stop()");
135
// // TODO Auto-generated method stub
136
// }
137
//
138
// public IGeometry getShape(int index) throws DriverIOException {
139
// // TODO Auto-generated method stub
140
// return testArray[index];
141
// }
142
//
143
// public int getShapeCount() throws DriverIOException {
144
// // TODO Auto-generated method stub
145
// return testArray.length;
146
// }
147
//
148
// public Rectangle2D getFullExtent() throws DriverIOException {
149
// // TODO Auto-generated method stub
150
// System.out.println("===> public Rectangle2D getFullExtent()");
151
// return null;
152
// }
153
//
154
// public int getShapeType() throws DriverIOException {
155
// // TODO Auto-generated method stub
156
// System.out.println("===> public int getShapeType()");
157
// return 0;
158
// }
159
//
160
// public FMapFeatureArcImsDriver getDriver() {
161
// return driver;
162
// }
163
//
164
// public void setDriver(FMapFeatureArcImsDriver driver) {
165
// this.driver = driver;
166
// }
167
//
168
// public Rectangle2D getTestExtent() {
169
// return new Rectangle(-180, -90, 360, 180);
170
// }
171
//
172
// public DataSource getRecordset() throws DriverLoadException {
173
//	
174
// if (dataSource != null) return dataSource;
175
//	
176
// if (getDriver() instanceof ObjectDriver)
177
// {
178
// String name =
179
// LayerFactory.getDataSourceFactory().addDataSource((ObjectDriver)
180
// getDriver());
181
// try {
182
// dataSource = LayerFactory.getDataSourceFactory().createRandomDataSource(name,
183
// DataSourceFactory.AUTOMATIC_OPENING);
184
// return dataSource;
185
// } catch (NoSuchTableException e) {
186
// throw new RuntimeException(e);
187
// } catch (com.hardcode.gdbms.engine.data.driver.DriverException e) {
188
// throw new RuntimeException(e);
189
// }
190
// }
191
// System.err.println("Unable to get Data source in method public DataSource
192
// getRecordset().");
193
// System.err.println("class: ArcImsVectorialAdapter.");
194
// return null;
195
// }
196
//
197
// public void setRecordSet(DataSource ds) {
198
// dataSource = ds;
199
// }
200
//
201
// }
202

  
0 203

  
tags/BN70/extensions/extArcims/src/es/prodevelop/cit/gvsig/arcims/fmap/drivers/ArcImsDriver.java
1
/**
2
 * 
3
 */
4
package es.prodevelop.cit.gvsig.arcims.fmap.drivers;
5

  
6
import java.io.File;
7
import java.io.IOException;
8
import java.net.ProtocolException;
9
import java.net.URL;
10

  
11
import org.gvsig.remoteClient.arcims.ArcImsStatus;
12
import org.gvsig.remoteClient.arcims.exceptions.ArcImsException;
13
import org.gvsig.remoteClient.wms.ICancellable;
14

  
15
/**
16
 * This interface offers the functionality of an ArcIMS client.
17
 * 
18
 * @see es.prodevelop.cit.gvsig.arcims.fmap.drivers.FMapRasterArcImsDriver FMapRasterArcImsDriver
19
 * @author jldominguez
20
 */
21
public interface ArcImsDriver {
22
	
23
	/**
24
	* Gets the layers available on the server
25
	* (the class that implements this interface will 
26
	* get the service name from the user)
27
	* 
28
	* @param server ArcIMS server's URL
29
	*/
30
	public void getCapabilities(URL server, ICancellable cancel)
31
		throws ArcImsException, IOException, ProtocolException;
32

  
33
	/**
34
	* Gets the visual information from the layers of 
35
	* the required service (that is, the map itself) depending
36
	* on the graphic context (coord. system, view's size, etc)
37
	* 
38
	* @param status the graphic context in which the request is performed
39
	* @return the graphic data to be viewed, that is, the map
40
	*/
41
	public Object getMap(ArcImsStatus status)
42
		throws ArcImsException, IOException, ProtocolException;
43

  
44
	/**
45
	* Gets the layer's available information on a particular xy coordinates
46
	* (usually derived from a mouse click). If it's a raster layer,
47
	* a request will be sent to the server asking for the data associated
48
	* to the elements (polygon, line or point) which cover the clicked
49
	* pixel.
50
	* 
51
	* @param status the graphic context in which the request is performed
52
	* (ccord. system, view's dimension etc.)
53
	* @param i x coordinate of the queried pixel 
54
	* @param j y coordinate of the queried pixel
55
	* @param  max_value maximun number of vector elements whose information
56
	* will be retrieved.
57
	* @return the available information at the given coordinates
58
	*/
59
	public String getFeatureInfo(ArcImsStatus status, int i, int j, int max_value)
60
	throws ArcImsException, IOException, ProtocolException;
61

  
62
}
0 63

  
tags/BN70/extensions/extArcims/src/es/prodevelop/cit/gvsig/arcims/fmap/drivers/FMapFeatureArcImsDriver.java
1
package es.prodevelop.cit.gvsig.arcims.fmap.drivers;
2

  
3
import java.awt.Rectangle;
4
import java.awt.geom.Rectangle2D;
5
import java.awt.geom.Rectangle2D.Double;
6
import java.io.File;
7
import java.io.IOException;
8
import java.net.ProtocolException;
9
import java.net.URL;
10
import java.util.ArrayList;
11
import java.util.HashMap;
12
import java.util.Random;
13
import java.util.TreeMap;
14

  
15
import javax.swing.JFileChooser;
16

  
17
import org.apache.log4j.Logger;
18
import org.gvsig.remoteClient.arcims.ArcImsClientP;
19
import org.gvsig.remoteClient.arcims.ArcImsFeatureClient;
20
import org.gvsig.remoteClient.arcims.ArcImsStatus;
21
import org.gvsig.remoteClient.arcims.ArcImsVectStatus;
22
import org.gvsig.remoteClient.arcims.exceptions.ArcImsException;
23
import org.gvsig.remoteClient.arcims.utils.FieldInformation;
24
import org.gvsig.remoteClient.arcims.utils.ServiceInfoTags;
25
import org.gvsig.remoteClient.arcims.utils.ServiceInformationLayerFeatures;
26
import org.gvsig.remoteClient.exceptions.ServerErrorException;
27
import org.gvsig.remoteClient.utils.BoundaryBox;
28
import org.gvsig.remoteClient.wms.ICancellable;
29

  
30
import com.hardcode.driverManager.DriverLoadException;
31
import com.hardcode.gdbms.engine.data.DataSource;
32
import com.hardcode.gdbms.engine.data.DataSourceFactory;
33
import com.hardcode.gdbms.engine.data.driver.DriverException;
34
import com.hardcode.gdbms.engine.data.object.ObjectSourceInfo;
35
import com.hardcode.gdbms.engine.instruction.EvaluationException;
36
import com.hardcode.gdbms.engine.instruction.SemanticException;
37
import com.hardcode.gdbms.engine.values.IntValue;
38
import com.hardcode.gdbms.engine.values.Value;
39
import com.hardcode.gdbms.engine.values.ValueFactory;
40
import com.hardcode.gdbms.parser.ParseException;
41
import com.iver.andami.PluginServices;
42
import com.iver.andami.ui.mdiManager.IWindow;
43
import com.iver.cit.gvsig.fmap.core.DefaultFeature;
44
import com.iver.cit.gvsig.fmap.core.FShape;
45
import com.iver.cit.gvsig.fmap.core.IFeature;
46
import com.iver.cit.gvsig.fmap.core.IGeometry;
47
import com.iver.cit.gvsig.fmap.core.ShapeFactory;
48
import com.iver.cit.gvsig.fmap.core.v02.FConstant;
49
import com.iver.cit.gvsig.fmap.drivers.DriverAttributes;
50
import com.iver.cit.gvsig.fmap.drivers.VectorialDriver;
51
import com.iver.cit.gvsig.fmap.edition.VectorialEditableAdapter;
52
import com.iver.cit.gvsig.fmap.layers.FBitSet;
53
import com.iver.cit.gvsig.fmap.layers.FLayer;
54
import com.iver.cit.gvsig.fmap.layers.LayerFactory;
55
import com.iver.cit.gvsig.fmap.layers.SelectableDataSource;
56
import com.iver.cit.gvsig.project.Project;
57
import com.iver.cit.gvsig.project.ProjectFactory;
58
import com.iver.cit.gvsig.project.documents.table.ProjectTable;
59
import com.iver.cit.gvsig.project.documents.view.ProjectView;
60
import com.iver.cit.gvsig.project.documents.view.gui.View;
61

  
62
import es.prodevelop.cit.gvsig.arcims.fmap.drivers.ArcImsAttributesDataSourceAdapter;
63
import es.prodevelop.cit.gvsig.arcims.fmap.layers.FFeatureLyrArcIMS;
64
import es.prodevelop.cit.gvsig.arcims.gui.wizards.ArcImsWizard;
65

  
66
public class FMapFeatureArcImsDriver implements ArcImsDriver, VectorialDriver {
67
	
68
	private static Logger logger = Logger.getLogger(FMapFeatureArcImsDriver.class.getName());
69
	
70
	private ArcImsFeatureClient client;
71
	private String server; 
72
	private String service;
73
	private String serviceType;
74
	private String remoteLayerName;
75
	private ArcImsAttributesDataSourceAdapter attsDataSourceAdapter;
76
	private SelectableDataSource dataSource = null;
77
	private DriverAttributes drvAtts;
78
	private ArrayList geometries;
79
	private HashMap pseudoGeometries;
80
	private int shapeType = FShape.NULL;
81
	private FFeatureLyrArcIMS layer;
82
	
83
	private HashMap overallIndexToVisibleIndex;
84
	private HashMap visibleIndexToOverallIndex;
85
	
86
	private DataSourceFactory dataSourceFactory = null;
87
	
88
	private Rectangle2D fullExtent;
89
	private IGeometry invisiblePoint = ShapeFactory.createPoint2D(0.0, 0.0);
90
	
91
	private VectorialEditableAdapter eadapter;
92
	
93
	/**
94
	* The constructor needs the server's URL and the name of the service to be used.
95
	* 
96
	* @param host server's URL
97
	* @param service name of the service, chosen among the ones retrieved after a
98
	* request with the parameter <tt>ServiceName=Catalog</tt>
99
	*/
100
	public FMapFeatureArcImsDriver(String host, String service, String theRemoteLayerName) {
101
		remoteLayerName = theRemoteLayerName;
102
		init(host, service);
103
		overallIndexToVisibleIndex = new HashMap();
104
		visibleIndexToOverallIndex = new HashMap();
105
		pseudoGeometries = new HashMap();
106
	}
107
	
108
	/**
109
	* The constructor needs the server's URL and the name of the service to be used.
110
	* 
111
	* @param host server's URL
112
	* @param service name of the service, chosen among the ones retrieved after a
113
	* request with the parameter <tt>ServiceName=Catalog</tt>
114
	*/
115
	public FMapFeatureArcImsDriver(String host, String service) {
116
		remoteLayerName = "None";
117
		init(host, service);
118
		overallIndexToVisibleIndex = new HashMap();
119
		visibleIndexToOverallIndex = new HashMap();
120
	}
121
	
122
	/**
123
	 * This method is called by the constructor and creates the 
124
	 * <tt>client</tt> object.
125
	 * @param host
126
	 * @param service
127
	 */
128
	public void init(String host, String svc) {
129
		server = host;
130
		service = svc;
131
		// This class is part of libArcIMS:
132
		client = new ArcImsFeatureClient(host, service, ServiceInfoTags.vFEATURESERVICE);
133
	}
134
	
135
	private String getIdName() {
136
		
137
		String id = (String) this.layer.getArcimsStatus().getLayerIds().get(0);
138
		ServiceInformationLayerFeatures silf = (ServiceInformationLayerFeatures) client.getServiceInformation().getLayerById(id);
139
		
140
		ArrayList fi = silf.getFieldInformationByType(FieldInformation.ID);	
141

  
142
		if (fi.size() != 1) {
143
			logger.error("ID does not have cardinality one: " + fi.size());
144
		}
145
		return ((FieldInformation) fi.get(0)).getName();
146
	}
147
	
148
	private ArrayList getClientsColumnNames() {
149
		String id = (String) layer.getArcimsStatus().getLayerIds().get(0);
150
		ServiceInformationLayerFeatures silf =
151
			(ServiceInformationLayerFeatures) client.getServiceInformation().getLayerById(id);
152
		int length = silf.getFieldsInfo().size();
153

  
154
		ArrayList resp = new ArrayList();
155
		for (int i=0; i<length; i++) {
156
			resp.add(silf.getFieldInformation(i).getName());
157
		}
158
		return resp;
159
	}
160
	
161
	private ArrayList getClientsColumnTypes() {
162
		String id = (String) layer.getArcimsStatus().getLayerIds().get(0);
163
		ServiceInformationLayerFeatures silf =
164
			(ServiceInformationLayerFeatures) client.getServiceInformation().getLayerById(id);
165
		int length = silf.getFieldsInfo().size();
166

  
167
		ArrayList resp = new ArrayList();
168
		for (int i=0; i<length; i++) {
169
			resp.add(new Integer(silf.getFieldInformation(i).getType()));
170
		}
171
		return resp;
172
	}
173

  
174
	public void closeDataSource() {
175
		try {
176
			dataSource.stop();
177
		} catch (DriverException e) {
178
			logger.error("While closing data source ", e);
179
		}
180
	}
181
	
182
	public SelectableDataSource getRecordSet() {
183
		return getRecordSet(null);
184
	}
185
	
186
	public SelectableDataSource getRecordSet(String mustHaveThisName) {
187
		
188
		if (dataSource != null) return dataSource;
189
		
190
		String subf[] = new String[1];
191
		subf[0] = getIdName();
192
		
193
		ArrayList ids = new ArrayList();
194
		try {
195
			// ids = getTestIds(); 
196
			ids = client.getAttributes(layer.getArcimsStatus(), subf, "", null);
197
		} catch (ArcImsException e1) {
198
			logger.error("While getting attributes initially ", e1);
199
		}
200
		
201
		Value[] idval = getAsValueArray(ids);
202

  
203
		dataSourceFactory = LayerFactory.getDataSourceFactory();
204
		
205
		// dataSourceFactory.
206
		// FakeObjectDriver driver = new FakeObjectDriver();
207
		attsDataSourceAdapter = new ArcImsAttributesDataSourceAdapter(getClientsColumnNames(),
208
				getClientsColumnTypes(), idval, dataSourceFactory, this, mustHaveThisName);
209
		
210
		dataSourceFactory.addDataSource(attsDataSourceAdapter, attsDataSourceAdapter.getTableName());
211
		
212
		ObjectSourceInfo osi = (ObjectSourceInfo) dataSourceFactory.getDriverInfo(attsDataSourceAdapter.getTableName());
213
		osi.name = attsDataSourceAdapter.getTableName();
214
		osi.driverName = "ArcImsAttributesDataSourceAdapter";
215
		
216
//		String tablename = attsDataSourceAdapter.getTableName();
217
//		String sqlstr = "select * from " + tablename + " where " + ArcImsSqlUtils.rowIndexFieldName + " = 8;";
218
//		DataSource result = null;
219
//		int n = -1;
220
		
221
		try {
222
//			attsDataSourceAdapter.start();
223
//			result = dataSourceFactory.executeSQL(sqlstr, DataSourceFactory.AUTOMATIC_OPENING);
224
//			attsDataSourceAdapter.stop();
225
//			
226
//			n = (int) result.getRowCount();
227
			dataSource = new SelectableDataSource(attsDataSourceAdapter);
228
		} catch (DriverException e) {
229
			logger.error("While creating DataSource ", e);
230
		}
231
		return dataSource;
232
	}
233
	
234
	public void declareTable() {
235
		try {
236
			IWindow v = PluginServices.getMDIManager().getActiveWindow();
237
			
238
			if (v == null) {
239
				
240
				ProjectView pv = new ProjectView();
241
				pv.setName("Nueva");
242
				View newview = (View) pv.createWindow();
243
				newview.setModel(pv);
244
				Project newproj = new Project();
245
				newproj.setName("nuevo");
246
				newproj.addDocument(pv);
247
				// newproj.addView(newprojview);
248
				v = newview;
249
			}
250

  
251
			ProjectView pv = (ProjectView) ((View) v).getModel();
252
			ProjectTable pt = ProjectFactory.createTable(attsDataSourceAdapter.getName(), eadapter);
253
			pv.getProject().addDocument(pt);
254
		} catch (Exception e) {
255
			logger.error("While creating DataSource ", e);
256
			e.printStackTrace();
257
		}
258
	}
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff