[Gvsig_desarrolladores] (sin asunto)

Francisco José Peñarrubia fran.penarrubia en iver.es
Jue Abr 12 10:06:08 CEST 2007


Hola Vidal.

IsWritable devuelve true si el driver en el que se apoya la capa 
devuelve true. Para el caso vectorial:

public boolean isWritable() {
VectorialDriver drv = getSource().getDriver();
if (!drv.isWritable())
return false;
// VectorialEditableAdapter vea = (VectorialEditableAdapter) lyrVect
// .getSource();
if (drv instanceof IWriteable)
{
IWriter writer = ((IWriteable)drv).getWriter();
if (writer != null)
{
if (writer instanceof ISpatialWriter)
return true;
}
}
return false;

}

Para el caso de los shp: Te devuelve true si el fichero tiene permiso de 
escritura. El resto (instanceof IWriteable) es por si tenemos solo capas 
con driver de lectura. Si el driver implementa la escritura, se podrá 
editar y guardar la capa en ese formato.
Si no, la capa se puede poner en edición, pero no se puede salvar a ese 
formato, solo se puede guardar como.

Saludos.



Vidal Toboso escribió:
>
> Buenos días a todos
>
> Esta claro que lo más recomendable no es modificar el código fuente, 
> pero ante este caso yo no he encontrado otra solución.
>
> Estoy desarrollando una extensión para validar y autenticar a los 
> usuarios que se conecten a la base de datos. Es decir, el usuario no 
> tiene ni idea del password de usuario de bbdd, ya que es algo que 
> proporciona el servicio web en el que se autentica.
>
> Para añadir capas al proyecto sí hice lo que comentaba Álvaro de 
> copiar parte del código fuente y generar mi propia extension (en 
> concreto de la extensión extJDBC), pero para el caso que nos ocupa de 
> abrir y cargar un proyecto, la cosa no es tan sencilla, porque se 
> trata de la extensión Project, que es bastante extensa (guardar 
> archivio, abrir archivo, etc), aun así no descarto realizarlo.
>
> Así, tuve que modificar la clase DefaultDBDriver.java 
> (libFMap/src/com.iver.cit.gvsig.fmap.drivers) y crear una clase 
> JValidationDlg.java, que por coherencia añadí en 
> (libIverUtiles/src/com.iver.utiles.swing).
>
> Por cierto, tengo una duda sobre las layer que cargo: he visto que 
> FLayer tiene el método isWritable(), al igual que isVisible(), pero 
> compruebo que no existe setWritable(boolean), y sí 
> setVisible(boolean). El isWritable(), al ser una FLayer una interfaz, 
> creo que acaba ejecutando el isWritable() de PostGisDriver.java cuando 
> se trata de un acceso a base de datos postgresql, que es mi caso, y 
> este suele devolver “true” o por lo menos lo mismo para todas las 
> capas que tiran de ese mismo driver, mi pregunta es ¿habría alguna 
> forma de poder especificar en cada capa, aunque consuman el mismo 
> driver, si es editable o no?
>
> Gracias por adelantado y un saludo,
>
> Vidal Toboso
>
> -----Mensaje original-----
> *De:* gvsig_desarrolladores-bounces en runas.cap.gva.es 
> [mailto:gvsig_desarrolladores-bounces en runas.cap.gva.es] *En nombre de 
> *Alvaro Zabala
> *Enviado el:* miércoles, 11 de abril de 2007 19:31
> *Para:* Lista de Desarrolladores de gvSIG
> *Asunto:* Re: [Gvsig_desarrolladores] (sin asunto)
>
> Maria José, no te recomiendo esa opción por lo obvio (siempre es 
> recomendable no introducir cambios en el código fuente para evitar 
> dolores de cabeza cuando vengan nuevas actualizaciones).
>
> Sé que la gente del proyecto estaba trabajando en la posibilidad de 
> que cada extensión pueda persistir los datos que necesite, y que estos 
> se guarden en el archivo GVP...(ellos ya te amplian la información).
>
> No obstante, si finalmente tuvieras que modificar el código de gvSIG, 
> te recomiendo que te crees tu propia extensión (aunque el código de 
> esta sea 99% copy+paste del código de gvSIG). Así evitarás problemas 
> con las actualizaciones (aunque estos siempre pueden acabar apareciendo)
>
> Un saludo.
>
>
> El día 11/04/07, *mj.gomez en telvent.abengoa.com 
> <mailto:mj.gomez en telvent.abengoa.com>* < mj.gomez en telvent.abengoa.com 
> <mailto:mj.gomez en telvent.abengoa.com>> escribió:
>
>
> Ya probé esa opción y no me funcionó. Al final he modificado el código 
> donde se muestra la ventana para introducir el password y lo que hago 
> es cogerla de un fichero.
> Saludos
>
>
>
> "David Fernández Martínez" <fmdavid en gmail.com <mailto:fmdavid en gmail.com>>
> "David Fernández Martínez"
> Enviado por: gvsig_desarrolladores-bounces en runas.cap.gva.es 
> <mailto:gvsig_desarrolladores-bounces en runas.cap.gva.es>
> 11/04/2007 09:09
> Por favor, responda a Lista de Desarrolladores de gvSIG
>
> Para:
>
> 	
>
> "Lista de Desarrolladores de gvSIG" 
> <gvsig_desarrolladores en runas.cap.gva.es 
> <mailto:gvsig_desarrolladores en runas.cap.gva.es>>
>
> cc:
>
> 	
>
> Asunto:
>
> 	
>
> Re: [Gvsig_desarrolladores] (sin asunto)
>
>
>
>
>
> Ocurre lo mismo con Postgres.
>
> Si en el fichero gvp se añade una propiedad "password" a mano...
> ...
> <property key="username" value="postgres"/>
> <property key="password" value="postgres"/>
> ...
> funciona y no te pide la contraseña. Pero en cuanto haces algún cambio 
> en el gvp y lo guardas, se piede esa información y te lo vuelve a pedir.
>
> ¿Alguien conoce algún remedio más eficaz?
> Gracias.
>
> El día 10/04/07, *mj.gomez en telvent.abengoa.com * 
> <mailto:mj.gomez en telvent.abengoa.com><mj.gomez en telvent.abengoa.com 
> <mailto:mj.gomez en telvent.abengoa.com>> escribió:
>
> Buenos días. Haciendo pruebas con gvSig descubro que cuando guardamos 
> en un proyecto una capa procedente de la base de datos, en mi caso 
> Oracle, y cierro el programa, cuando lo vuelvo a abrir e intento 
> cargar el proyecto obtengo una ventana en la que se solicita la clave 
> del usuario de conexión a la base de datos. Es posible omitir esta 
> ventana y configurar la clave de alguna otra manera?
>
> Saludos y gracias
>
> _______________________________________________
> gvSIG_desarrolladores mailing list_
> _gvSIG_desarrolladores en runas.cap.gva.es 
> <mailto:gvSIG_desarrolladores en runas.cap.gva.es>_
> _http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores 
> <http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores>
>
>
>
>
> -- 
> ----------------------------------------
> David Fernández Martínez
>
> _
> _fmdavid en gmail.com <mailto:fmdavid en gmail.com> 
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en runas.cap.gva.es 
> <mailto:gvSIG_desarrolladores en runas.cap.gva.es>
> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en runas.cap.gva.es 
> <mailto:gvSIG_desarrolladores en runas.cap.gva.es>
> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>
>
>
>
> -- 
> Alvaro Zabala Ordóñez
> Tlf: 657235082
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en runas.cap.gva.es
> http://runas.cap.gva.es/mailman/listinfo/gvsig_desarrolladores
>   

------------ próxima parte ------------
Se ha borrado un mensaje que no está en formato texto plano...
Nombre     : fran.penarrubia.vcf
Tipo       : text/x-vcard
Tamaño     : 269 bytes
Descripción: no disponible
Url        : http://runas.cap.gva.es/pipermail/gvsig_desarrolladores/attachments/20070412/7ff48154/fran.penarrubia.vcf


Más información sobre la lista de distribución gvSIG_desarrolladores