public static function synchronizeWithSolr( $shard = null )
    {
        if ( self::generateConfiguration() )
        {
            try
            {
                self::pushConfigurationToSolr( $shard );
            }
            catch ( Exception $e )
            {
                self::$lastSynchronizationError = $e->getMessage();
                eZDebug::writeError( self::$lastSynchronizationError, __METHOD__ );
                return false;
            }
        }
        else
        {
            $message = ezpI18n::tr( 'extension/ezfind/elevate', "Error while generating the configuration XML" );
            self::$lastSynchronizationError = $message;
            eZDebug::writeError( $message, __METHOD__ );
            return false;
        }
        return true;
    }