Add git token (code + config)

This commit is contained in:
jeffcheasey88 2023-09-05 21:15:26 +02:00
parent 24dc025507
commit 4df8f2a37b
3 changed files with 47 additions and 43 deletions

View file

@ -30,23 +30,23 @@ public class Configuration {
private int groupJoinMinutes; private int groupJoinMinutes;
private String groupQuitMinutes; private String groupQuitMinutes;
private File file; private String git_token;
private File _file;
public Configuration(String path){ public Configuration(String path){
this.file = new File(path); this._file = new File(path);
System.out.println("Config on " + file.getAbsolutePath()); System.out.println("Config on " + _file.getAbsolutePath());
} }
public void load() throws Exception{ public void load() throws Exception{
if (!this.file.exists()) if(!this._file.exists()) return;
return; BufferedReader reader = new BufferedReader(new FileReader(this._file));
BufferedReader reader = new BufferedReader(new FileReader(this.file));
String line; String line;
while((line = reader.readLine()) != null){ while((line = reader.readLine()) != null){
String[] split = line.split("="); String[] split = line.split("=");
Field field = getClass().getDeclaredField(split[0]); Field field = getClass().getDeclaredField(split[0]);
if (field == null) if(field == null) continue;
continue;
field.setAccessible(true); field.setAccessible(true);
injectValue(field, split[1]); injectValue(field, split[1]);
} }
@ -93,18 +93,16 @@ public class Configuration {
} }
public void save() throws Exception{ public void save() throws Exception{
if (!file.exists()) { if(!_file.exists()){
File parent = file.getParentFile(); File parent = _file.getParentFile();
if (!parent.exists()) if(!parent.exists()) parent.mkdirs();
parent.mkdirs(); _file.createNewFile();
file.createNewFile();
} }
Field[] fields = getClass().getDeclaredFields(); Field[] fields = getClass().getDeclaredFields();
BufferedWriter writer = new BufferedWriter(new FileWriter(file)); BufferedWriter writer = new BufferedWriter(new FileWriter(_file));
for(Field field : fields){ for(Field field : fields){
field.setAccessible(true); field.setAccessible(true);
if (field.getName().startsWith("_")) if(field.getName().startsWith("_")) continue;
continue;
Object value = field.get(this); Object value = field.get(this);
writer.write(field.getName() + "=" + value); writer.write(field.getName() + "=" + value);
} }
@ -157,8 +155,7 @@ public class Configuration {
} }
public String getUsersFiles(){ public String getUsersFiles(){
if (users_files == null || users_files.trim().isEmpty()) if(users_files == null || users_files.trim().isEmpty()) users_files = "/tmp/users_files";
users_files = "/tmp/users_files";
return users_files; return users_files;
} }
@ -173,4 +170,8 @@ public class Configuration {
public String getGroupQuitMinutes(){ public String getGroupQuitMinutes(){
return this.groupQuitMinutes; return this.groupQuitMinutes;
} }
public String getGitToken(){
return this.git_token;
}
} }

View file

@ -76,7 +76,7 @@ public class Main{
private static void initRoutes(Router router, Configuration config){ private static void initRoutes(Router router, Configuration config){
DatabaseRepository repo = router.getDataBase(); DatabaseRepository repo = router.getDataBase();
router.register(new Register(repo, router, config.getUsersFiles())); router.register(new Register(repo, router, config.getUsersFiles(), config.getGitToken()));
router.register(new Login(repo, router)); router.register(new Login(repo, router));
router.register(new ProfileSettings(repo)); router.register(new ProfileSettings(repo));
router.register(new ChangePassword(repo)); router.register(new ChangePassword(repo));

View file

@ -36,11 +36,13 @@ public class Register extends FormResponse {
private String usersFilesPath; private String usersFilesPath;
private KeyPairGenerator generator; private KeyPairGenerator generator;
private Encoder encoder; private Encoder encoder;
private String gitToken;
public Register(DatabaseRepository databaseRepo, Router router, String initUsersFilesPath) { public Register(DatabaseRepository databaseRepo, Router router, String initUsersFilesPath, String gitToken){
this.databaseRepo = databaseRepo; this.databaseRepo = databaseRepo;
this.router = router; this.router = router;
usersFilesPath = initUsersFilesPath; this.usersFilesPath = initUsersFilesPath;
this.gitToken = gitToken;
try { try {
generator = KeyPairGenerator.getInstance("RSA"); generator = KeyPairGenerator.getInstance("RSA");
generator.initialize(2048); //a changer ? generator.initialize(2048); //a changer ?
@ -120,6 +122,7 @@ public class Register extends FormResponse {
HttpsURLConnection connection = (HttpsURLConnection) new URL(url).openConnection(); HttpsURLConnection connection = (HttpsURLConnection) new URL(url).openConnection();
connection.setRequestMethod("POST"); connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type","application/json"); connection.setRequestProperty("Content-Type","application/json");
connection.setRequestProperty("Authorization","Bearer "+this.gitToken);
connection.setDoInput(true); connection.setDoInput(true);
connection.setDoOutput(true); connection.setDoOutput(true);