Archive for the ‘Programación’ Category
Viernes, Octubre 21st, 2011
Gente, no se si se acuerdan que esto pasaba también con las aplicaciones programadas en Visual Basic 6, para el cual teníamos el mágigo DoEvents, que lo que hacía no era más que decirle al sistema operativo que se acuerde que hay que refrescar el display. Bueno después de buscar miles, leer sobre threads y demás encontré una solución tan sencilla como el DoEvents.
Simplemente agreguen al bucle (for while, lo que sea):
display.readAndDispatch();
Donde display es el display que creo la shell compisite o lo que fuese. Esto se complica cuando no es un bucle el que está consumiendo mucho si no una sola instrucción, para eso les recomiendo que lean esto:
http://book.javanb.com/swt-the-standard-widget-toolkit/ch05lev1sec7.html
Saludos y espero que les sirva.
MN
Tags: aplicación, doEvents, eclipse, hang, se cuelga, SWT
Posted in Programación, java | No Comments »
Miércoles, Agosto 10th, 2011
Bueno, necesitaba hacer un reporte para el SENASA en el que en cada columna haya un mes. Onda enero, febrero, etc. Entonces hice una pequeña función que me ayudará a hacerlo, es muestro como.
(más…)
Tags: postgres, postgresql, trigger
Posted in Programación, Scripting, Servidores Linux | No Comments »
Miércoles, Agosto 10th, 2011
Bueno gente, esto no tiene mucho más de lo que dice el título. Es más lo dejo acá para no olvidarmelo nomás.
ls | while read -r FILE; do mv -v “$FILE” `echo $FILE | tr ‘ ‘ ‘_’ `; done;
Lo saqué de acá: https://bbs.archlinux.org/viewtopic.php?id=36305
Muy piola.
MN
Tags: bash script, espacios, guion bajo
Posted in Programación, Scripting, Servidores Linux | No Comments »
Jueves, Abril 14th, 2011
Holass samigos, acá les dejo el script que uso para iniciar geoserver, lo ponen el /etc/init.d y luego corren el comando:
update-rc.d geoserver defaults
Espero les sirva.
#! /bin/sh
### BEGIN INIT INFO
# Provides: geoserver
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: GeoServer OGC server
### END INIT INFO
# Author: Lennart Juette
# Geoserver configuration - use /etc/default/geoserver to override these vars
# user that shall run GeoServer
USER=root
GEOSERVER_HOME=/opt/geoserver-2.0.3
GEOSERVER_DATA_DIR=$GEOSERVER_HOME/data_dir
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="GeoServer daemon"
NAME=geoserver
JAVA_HOME=/usr/lib/jvm/java-6-openjdk/jre
JAVA_OPTS="-Xms128m -Xmx512m"
DAEMON="$JAVA_HOME/bin/java"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
DAEMON_ARGS="$JAVA_OPTS $DEBUG_OPTS -DGEOSERVER_DATA_DIR=$GEOSERVER_DATA_DIR -Djava.awt.headless=true -jar start.jar"
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
do_start(){
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
start-stop-daemon --start --pidfile $PIDFILE --make-pidfile \
--chuid $USER --chdir $GEOSERVER_HOME \
-b --test --exec $DAEMON -- $DAEMON_ARGS > /dev/null \
|| return 1
start-stop-daemon --start --pidfile $PIDFILE --make-pidfile \
--chuid $USER --chdir $GEOSERVER_HOME \
-b --exec $DAEMON -- $DAEMON_ARGS \
|| return 2
}
do_stop(){
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
start-stop-daemon --stop --pidfile $PIDFILE \
--user $USER \
--retry=TERM/30/KILL/5
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return "$RETVAL"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
:
Tags: bash script, boot, debian, geoserver, runleve, SIG, update-rc.d
Posted in Programación, SIG, Scripting, Servidores Linux, Uncategorized | No Comments »
Jueves, Abril 14th, 2011
Hola gente, para todos aquellos que hayan leído este post, este no les agregará mucho. Solo quiero dejarlo acá por si algún día lo tengo que usar de nuevo. Este escripcito nos pasa a postgis todos los archivos de un directorio, no es guau pero nos ahorra una o dos horas de trabajo.
PGPASSWORD=clavedepostgres
export PGPASSWORD
PGUSER=postgres
export PGUSER
for i in $(ls *.shp); do
nombre=$(echo $i | cut -d "." -f 1);
shp2pgsql -I -s 4326 -W latin1 $i $nombre | psql -d hidricos
done;
Un abrazo a mi amigo Luís Acosta, que me ayudó con todo esto.
Saludos a todos.
Tags: esri, postgis, script, shape, shp2pgsql, sql
Posted in Programación, SIG, Scripting, Servidores Linux | No Comments »
Viernes, Julio 23rd, 2010
Bueno gente, cuando empecé a investigar este tema ví muchas versiones, algunos que decían que era imposible hacerlo con pgsql, otros que sí o sí había que usar plperl, otros que solo con tablelog, en fin.. los que me conocen saben que cuanto más difícil parece la tarea más ganas me dan de hacerla.
El escenario es el siguiente, tenemos varías tablas en una base de datos, y queremos que cuando se hagan cambios en esa tabla se cree otra tabla que guarde estos cambios.
Bueno gente, cuando empecé a investigar este tema ví muchas versiones, algunos que decían que era imposible hacerlo con pgsql, otros que sí o sí había que usar plperl, otros que solo con tablelog, en fin.. los que me conocen saben que cuanto más difícil parece la tarea más ganas me dan de hacerla.El escenario es el siguiente, tenemos varías tablas en una base de datos, y queremos que cuando se hagan cambios en esa tabla se cree otra tabla que guarde estos cambios.
(más…)
Tags: funciones, NEW used in query that is not in a rule, plpgsql, postgres, postgresql, tablelog, trigger
Posted in Programación, SIG, Servidores Linux | 8 Comments »
Miércoles, Junio 30th, 2010
Bueno gente, les enseñaré a hacer de una manera muy muy sencilla usando eclipse un .war que podamos desplegar en tomcat. Básicamente lo que haremos es:
1) crear un jar de nuestro código fuente.
2) meter todas las libs dentro del directorio lib.
3) Crear un ant un .war y buala
(más…)
Tags: archivo jar, archivo war, compile, crear archivo war, eclipse, gwt, jar file, tomcat, war file
Posted in Programación, SIG, Uncategorized, java | 3 Comments »