Projets

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

    <bean id="jmxTestCmis"
        class="org.esupportail.application.service.fileStorage.JmxTestCmisImpl">
        ...
    </bean>  

    <!--  JMX to control CMIS - ->
    <bean id="exporter" class="org.springframework.jmx.export.MBeanExporter" >
        <property name="beans">
            <map>
                <entry key="bean:name=testCmis" value-ref="jmxTestCmis"/>
            </map>
        </property>
    </bean>
    
   

...

Bloc de code
package org.esupportail.application.services.fileStorage;
public interface JmxTestCmis {
    /**
     * Enable the use of CMIS.
     */
    void enabledCmis();
    
    /**
     * Disable the use of CMIS.
     */
    void disabledCmis();
    
    /**
     * @return the cmisIsReady
     */
    Boolean getCmisIsReady();
}

package org.esupportail.application.services.fileStorage;
import java.io.Serializable;
public class JmxTestCmisImpl implements JmxTestCmis, Serializable {
    /**
     * True if cmis is ready.
     * Default value = true.
     */
    private Boolean cmisIsReady;
    public JmxTestCmisImpl() {
        super();
        cmisIsReady = true;
    }

    @Override
    public void disabledCmisdisableCmis() {
        cmisIsReady = false;
    }

    @Override
    public void enabledCmisenableCmis() {
        cmisIsReady = true;
    }
    
    public Boolean getCmisIsReady() {
        return cmisIsReady;
    }
}

...

Bloc de code
#!/bin/csh
set cmdLineJMXJar=/opt/admin-java/jmx/cmdline-jmxclient.jar
set port=9656
set jmxHost=host.etablissement.fr
#No User and password so pass '-'
echo "désactive l'utilisation de CMIS pour les applications en ecoute sur le port 9656"
/opt/jdk1.6.0/bin/java -jar ${cmdLineJMXJar} - ${jmxHost}:${port} bean:name=testCmis disabled

Remarque

L'application cliente JMX ne fait ici que lire l'état du serveur CMIS. On pourrait imaginer aller plus loin et vouloir l'administrer à distance.

Cela est bien sur possible grâce aux méthodes enableCmis() et  disableCmis() du Mbean jmxTestCmis .