Cassandra MariaDB Virtual Box images

I made a Virtual Machine images for testing Cassandra integration in MariaDB. This Virtual machine is based on Ubuntu 12.04 with Datastax Cassandra 1.1 version and prebuilt version of MariaDB 5.5.27 + Cassandra from here.

You can get it by using Vagrant.

After that run this commands:

vagrant init cassandramariadb "http://noplay.net/~noplay/cassandramariadb.box"
vagrant up
vagrant ssh

After that:

For loading the sample data:

vagrant@mariadb-cassandra:~$ cat create_keyspace.cql |cqlsh 
vagrant@mariadb-cassandra:~$ cat create_database.sql |mysql -uroot

Show the data in MySQL:

vagrant@mariadb-cassandra:~$ mysql -u root
use blog;
SELECT posts.message,users.name FROM posts,users WHERE posts.user = users.id;

Show the data in Cassandra:

vagrant@mariadb-cassandra:~$ cqlsh 
cqlsh> use blog;
cqlsh:blog> SELECT * FROM posts;

And voilà :)

Trouver la sitemap d'un site

Lorsqu’on veut indexer un site il peut être utile de partir de la sitemap du site qui est justement faite pour cela.

Tout d’abord vous pouvez regarder dans le fichier robots.txt si il y a une section sitemap:

Sitemap: http://example.com/sitemap.xml

Si la sitemap n’est pas référencé il vous reste une chance. Il est possible que le webmaster ai soumis la sitemap à google. Vous pouvez le savoir en tapant cette requête:

site:example.com filetype:xml OR filetype:gz

Intercepter les touches de volumes

Si vous souhaitez changer le comportement des touches de volumes de votre téléphone android. Vous pouvez implémenter les méthodes onKeyDown et onKeyUp dans votre activité.

Il faut surcharger les deux méthodes. onKeyDown empêchera le changement de volume et onKeyUp empêchera les sons de notifications de changement du volume.

Le return true dans ces deux méthodes permet de dire que vous avez intercepté l’événement.

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
   if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
       return true;
   }
   if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
       return true;
    }
   return super.onKeyDown(keyCode, event);
}

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
   if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
       return true;
   }
   if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
       return true;
   }
   return super.onKeyUp(keyCode, event);
}

Détecter si une application android tourne dans l'émulateur

Parfois, il est nécessaire de détecter si on se trouve dans l’émulateur. Cela permet par exemple de contourner les limitations réseau de l’émulateur.

Vous pouvez faire cela à l’aide du code suivant:

if ("sdk".equals(android.os.Build.PRODUCT)) {
//Dans l'émulateur
}

Mystère

Voici ma première application publiée sur l’android market. C’est une base d’énigmes à résoudre depuis votre téléphone rangé par difficultés.

Ce n’est pour le moment qu’une version de démo. Le plus important maintenant c’est d’étoffer la base d’énigmes.

GCC savoir si on est inclus par de l'ASM

Récemment j’ai travaillé sur un projet où j’avais un fichier h inclus par de l’asm ou du C. Je ne voulais pas que certaines partie du .h soit inclus uniquement dans le cas où l’on est dans pas dans le ASM. On peut faire cela très simplement avec le préprocesseur:

#ifndef __ASSEMBLER__
MON CODE
#endif  /*  __ASSEMBLER__ */