Skip to content

Latest commit

 

History

History
117 lines (90 loc) · 5.34 KB

README.md

File metadata and controls

117 lines (90 loc) · 5.34 KB

JLibEcoleDirecte by Benco11

Librairie EcoleDirecte en Java : JLibEcoleDirecte

Nombre de téléchargements     Nombre de vulnérabilités     Dernier commit     Jitpack     License     Stars

Fonctionnalités

🔐 Authentification pour les comptes Élèves
📑 Récupération des notes
👦🏻 Récupération des informations du profil
🏫 Récupération des informations de la classe
🏃🏽 Récupération des données de vie scolaire

Dépendances

➡️ Gradle :

repositories {
	maven { url 'https://jitpack.io' }
}

dependencies {
	implementation 'com.github.Benco11-developement:JLibEcoleDirecte:{Version}'
}

➡️ Maven :

<repositories>
	<repository>
		<id>jitpack.io</id>
		<url>https://jitpack.io</url>
	</repository>
</repositories>

<dependency>
	<groupId>com.github.Benco11-developement</groupId>
	<artifactId>JLibEcoleDirecte</artifactId>
	<version>Version</version>
</dependency>

Comment l'utiliser

➡️ Pour commencer, il vous faudra créer un objet Session qui prend en paramètres : identifiant,pass. Pour initialiser la session, utilisez Session#connect.

⚠️ Si les identifiants sont invalides, une erreur EcoleDirecteLoginException sera levée !

Quelques exemples

Dans l'exemple ci-dessous, on essaye de calculer la moyenne générale du trimestre 2 de l'élève :

import fr.benco11.jlibecoledirecte.Session;
import fr.benco11.jlibecoledirecte.exceptions.EcoleDirecteAccountTypeException;
import fr.benco11.jlibecoledirecte.exceptions.EcoleDirecteLoginException;
import fr.benco11.jlibecoledirecte.exceptions.EcoleDirecteUnknownConnectionException;

class AverageNote {
    public static void main(String[] args) {
		Session session = new Session("Jean Martin-Dupont", "VilebrequinTeCisaille");
		try {
			session.connect();
    		System.out.println(session.getAverageGrades(2).stream().mapToDouble(e -> Double.valueOf(e.getNote())).average().getAsDouble());
		} catch (EcoleDirecteLoginException | EcoleDirecteUnknownConnectionException | EcoleDirecteAccountTypeException | EcoleDirecteIOException | EcoleDirectePeriodeException e) {
    		e.printStackTrace();
		}
    }
}

⚠️ Si et seulement si le trimestre est fini, on peut utiliser GradeSetMatieres#getAppreciationPP, GradeSetMatieres#getAverage, GradeSetMatieres#getAverageClass, GradeSetMatieres#getMinAverage et GradeSetMatieres#getMaxAverage.

import fr.benco11.jlibecoledirecte.Session;
import fr.benco11.jlibecoledirecte.exceptions.EcoleDirecteAccountTypeException;
import fr.benco11.jlibecoledirecte.exceptions.EcoleDirecteLoginException;
import fr.benco11.jlibecoledirecte.exceptions.EcoleDirecteUnknownConnectionException;
   
class AverageNote {
    public static void main(String[] args) {
    	Session session = new Session("Jean Martin-Dupont", "VilebrequinTeCisaille");
    	try {
	    	session.connect();
	    	GradePeriode periode = session.getPeriode(1); // On met en cache le résultat pour éviter de multiples requêtes
			System.out.println("Moyenne : " + periode.getEnsembleMatieres().getAverage());
			System.out.println("Appréciation : " + periode.getEnsembleMatieres().getAppreciationPP());
			System.out.println("Moyenne générale : " + periode.getEnsembleMatieres().getAverageClass());
    	} catch (EcoleDirecteLoginException | EcoleDirecteAccountTypeException | EcoleDirecteUnknownConnectionException | EcoleDirecteIOException | EcoleDirectePeriodeException e) {
		e.printStackTrace();
	}
    }
   
}

Vous pouvez aussi récupérer le nom de la classe de l'élève :

import fr.benco11.jlibecoledirecte.Session;
import fr.benco11.jlibecoledirecte.exceptions.EcoleDirecteLoginException;

class ClassName {
    public static void main(String[] args) {
		Session session = new Session("Jean Martin-Dupont", "VilebrequinTeCisaille");
		try {
	   		session.connect();
	    	System.out.println(session.getAccount().getProfile().getClasse().getLibelle());
		} catch (EcoleDirecteLoginException e) {
	    	e.printStackTrace();
		}
    }
}

Autres

📖 Une documentation est à votre disposition (javadoc) dans le dossier "javadoc".
💾 Les versions de la librairie se trouvent dans le dossier "versions" (certaines versions peuvent venir à manquer car présentant des failles de sécurité)