Mahmoud El Hajj

11 papers C 4Journal 6Unranked 1
YearRankTypeTitle / Venue / Authors
2023 J jnl
Remote. Sens.
Elodie Da Silva, Emma R. Woolliams, Nicolas Picot, Jean-Christophe Poisson, Henriette Skourup, Geir Moholdt, Sara Fleury, Sajedeh Behnia, Vincent Favier, Laurent Arnaud, Jérémie Aublanc, Valentin Fouqueau, Nicolas Taburet, Julien Renou, Hervé Yésou, Angelica Tarpanelli, Stefania Camici, Renée Mie Fredensborg Hansen, Karina Nielsen, Frédéric Vivier, François Boy, Roger Fjørtoft, Mathilde Cancet, Ramiro Ferrari, Ghislain Picard, Mohammad J. Tourian, Nicolaas Sneeuw, Eric Munesa, Michel Calzas, Adrien Paris, Emmanuel Le Meur, Antoine Rabatel, Guillaume Valladeau, Pascal Bonnefond, Sylvie Labroue, Ole B. Andersen, Mahmoud El Hajj, Filomena Catapano, Pierre Féménias
2016 J jnl
Int. J. Appl. Earth Obs. Geoinformation
Ibrahim Fayad, Nicolas N. Baghdadi, Stéphane Guitet, Jean-Stéphane Bailly, Bruno Hérault, Valéry Gond, Mahmoud El Hajj, Dinh Ho Tong Minh
2016 J jnl
Remote. Sens.
Ibrahim Fayad, Nicolas N. Baghdadi, Jean-Stéphane Bailly, Nicolas Barbier, Valéry Gond, Bruno Hérault, Mahmoud El Hajj, Frédéric Fabre, José Perrin
2015 C conf
IGARSS
Ibrahim Fayad, Nicolas N. Baghdadi, Jean-Stéphane Bailly, Nicolas Barbier, Valéry Gond, Bruno Hérault, Mahmoud El Hajj, Jeremie Lochard, José Perrin
2014 J jnl
Remote. Sens.
Ibrahim Fayad, Nicolas N. Baghdadi, Jean-Stéphane Bailly, Nicolas Barbier, Valéry Gond, Mahmoud El Hajj, Frédéric Fabre, Bernard Bourgine
2014 C conf
IGARSS
Ibrahim Fayad, Nicolas N. Baghdadi, Jean-Stéphane Bailly, Nicolas Barbier, Valéry Gond, Mahmoud El Hajj, Frédéric Fabre
2014 C conf
IGARSS
Ibrahim Fayad, Nicolas N. Baghdadi, Valéry Gond, Jean-Stéphane Bailly, Nicolas Barbier, Mahmoud El Hajj, Frédéric Fabre
2014 J jnl
Int. J. Appl. Earth Obs. Geoinformation
Ibrahim Fayad, Nicolas N. Baghdadi, Valéry Gond, Jean-Stéphane Bailly, Nicolas Barbier, Mahmoud El Hajj, Frédéric Fabre
2013 J jnl
IEEE J. Sel. Top. Appl. Earth Obs. Remote. Sens.
Maëlle Aubert, Nicolas N. Baghdadi, Mehrez Zribi, Kenji Ose, Mahmoud El Hajj, Emmanuelle Vaudour, Enrique González-Sosa
2009 conf
IFSA/EUSFLAT Conf.
Mahmoud El Hajj, Serge Guillaume, Agnes Begue
2008 C conf
FUSION
Mahmoud El Hajj, Agnès Bégué, Serge Guillaume, Jean-François Martiné
redb/settings/elasticsearch.py
← Index redb/settings/elasticsearch.py python
import logging
import os

from elasticsearch import Elasticsearch
from dotenv import load_dotenv

load_dotenv()

# Elasticsearch configuration
ELASTIC_ENDPOINT = os.getenv("ELASTIC_HOST")
ELASTIC_ENFORCE_SSL = os.getenv("ELASTIC_ENFORCE_SSL", False) == "True"
ELASTIC_USER = os.getenv("ELASTIC_USER")
ELASTIC_PASSWORD = os.getenv("ELASTIC_PASSWORD")
ELASTIC_BINARIES_COLLECTION = os.getenv("ELASTIC_BINARIES_COLLECTION", "test_db")

# Cached client instance
_elasticsearch_client = None

def get_elasticsearch_client():
    """Get Elasticsearch client with lazy initialization and caching"""
    global _elasticsearch_client
    
    if _elasticsearch_client is None:
        if not ELASTIC_ENDPOINT:
            raise ValueError("ELASTIC_HOST environment variable is required for Elasticsearch connection")
            
        _elasticsearch_client = Elasticsearch(
            ELASTIC_ENDPOINT,
            verify_certs=ELASTIC_ENFORCE_SSL,
            basic_auth=(ELASTIC_USER, ELASTIC_PASSWORD),
            maxsize=20,
            retry_on_timeout=True,
            timeout=30,
        )
    
    return _elasticsearch_client

def create_elasticsearch_client():
    """Create a new Elasticsearch client connection (legacy function)"""
    return get_elasticsearch_client()