Skip to content
Snippets Groups Projects
Commit fc2bacb2 authored by Eilert Tunheim's avatar Eilert Tunheim
Browse files

Merge branch 'Eilerts_branch' into 'master'

Added authentication class

See merge request mesji/bacheloroppgave_2022!12
parents cf39e20e 8e10b7bb
No related branches found
No related tags found
No related merge requests found
package com.application;
public class Credentials {
String projectId = "MY_PROJECT_ID";
}
package com.application.DataBase;
import com.application.Credentials;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.auth.oauth2.ServiceAccountCredentials;
import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.Dataset;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class Authentication{
public static void explicit() throws IOException {
// TODO(developer): Replace these variables before running the sample.
String projectId = String.valueOf(new Credentials());
File credentialsPath = new File(".\\src\\main\\resources\\com.application\\sf-drying-optimization-1e234ad2b0f4.json");
// Load credentials from JSON key file. If you can't set the GOOGLE_APPLICATION_CREDENTIALS
// environment variable, you can explicitly load the credentials file to construct the
// credentials.
GoogleCredentials credentials;
try (FileInputStream serviceAccountStream = new FileInputStream(credentialsPath)) {
credentials = ServiceAccountCredentials.fromStream(serviceAccountStream);
}
// Instantiate a client.
BigQuery bigquery =
BigQueryOptions.newBuilder()
.setCredentials(credentials)
.setProjectId(projectId)
.build()
.getService();
// Use the client.
System.out.println("Datasets:");
for (Dataset dataset : bigquery.listDatasets().iterateAll()) {
System.out.printf("%s%n", dataset.getDatasetId().getDataset());
}
}
}
package com.application;
import com.application.DataBase.Authentication;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.stage.Stage;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.Objects;
import static com.application.DataBase.Authentication.explicit;
public class Main extends Application {
Button button;
public static void main(String[] args) {
public static void main(String[] args) throws IOException {
//System.out.println("Hello world!");
//Authentication test = explicit();
launch(args);
}
......
{
"type": "service_account",
"project_id": "sf-drying-optimization",
"private_key_id": "1e234ad2b0f42caff46c54993f72e6ed7a6e47f5",
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC9uUivxQCvsUYW\nM2GCJaioM4/KdHIhkgbtGFKtYacQcvJaE1z9RsgTBThWAYXblkigptJ9pCOPIpFR\naqDGujua7+bEm37eQ8pEAPiiSHqNWaevzSjS9OZ8vLD+0AdDy17HuL1KjnR6vJi6\nBRfVfvu3DtzxJbsUutxTwjDTUIZqg6QLeRja0sfa5r1lbqJ6o/uK99fYi3cuW9XW\nbK5czMROw+lNeVU9S2B/5EfezeD+Qtt0hPL6IVdz5oCtbQY9Sj/C+N+tyjPYYXKG\neEZhfvVZOmilIyTupXH+5CJfezxYP6Weg0nD8a6Zt71FSces82PufCU/swiEgh9/\n9zv+anPrAgMBAAECggEAJxcI6eY+OPTeiu51NbqKoHVXOBB7/3y13p33Uu/e2x3D\n31lD/I9b48dcjyPrL44sUqVskySBixlFNbAxhiCS7V5mfrXHEwaGozJMCCvEzGDf\nkvJDagu5fZPnJ+k2xfoeAiqHHdhyGWPIV/N6sKtkM5hlX241uJSzlrJZGwDpYQJ5\na2s5YIw+wLZ90Ybj/V7mvZ0UFLDJV6JztIg1pxSC0CTA7Fz6oZdwIKytBGcYSved\n8tkVPufkL7LtYoNZFrzkgPrTBpm0Teq+XUpCazIySEcOBySbdlhdhMf66nawY1Tx\nRsRUxTtWuFrtDl3XIFOv8C1iAtDiPA4b4Yb8sTR2eQKBgQDuz7xvxYeZdzyFWZlI\nQRVvJAYWT2p2bhImSA9I097B8mWtQ/TY5qankwFcuP+nu3u2MKYRszPrIt5eoH73\nMFi2cqMHOVmsx8JALG4vWlkNNKier06JnuJjH6hh5nQBU+cFuhkHIVfbjBnCiSz8\nizIZxeFG88JfqZFVBR6OIpYyzQKBgQDLYRLQGseonf8Rdv5oRLAL49Q+NnimC2Mo\n7io+DqlhbTFWxE0M6DUZO9C+MesHHSCmw3ZgqT6ykQPxCKZ6ZLQzQzDRqNi+4vy7\n2+BFwKqvUIJtMP0cLNMBRpsjmYMXQqhHGFAHuDsRyyKu0YTUayEB4/MBBnoqnC48\nygBudP5xlwKBgQDQTBu1dhqHTkxYl8UuE66paUdx8EURFYL5JwNF5581lcL/9PU8\ntzoHkh6vDKHZYJtQV3CSobcYUiqZaO41l1LZmHYAmBJStU4GgXp+DRT9gr/M4WXk\nfdRC11scQVFP0yn/gcnQwVGLqtDRMKsvgA3sEwAizfztSc781GFJYnuVxQKBgQCC\npQoDuqA1FcFLA8hrTGxWRvUJPc6Ew13gZhWmpZ5y4kTGevUP7H5nhkASXVifyjs2\nROtfLnkDFhqVFDx09Qm4wFm05KTPAlrdhmHsDNbYJXyTDdwZ5EVrVWLFHJDUOVKF\n0P1f6B2x0W6nJBoSpfqfD0IDj5iclJUzIYPjcK4eYwKBgFfUiZhVj4cWPb1k2MJf\nXC0LBmFgqiW9w4rXfyEXtRSRbO4661TvVHw66SF09hwzz/+MW2R7HLi1IWZNyRF3\nXw39WtI8bmUsLTJbH6gshanmu8cSPLBt82WlRd6gS+SMxyZ65wY/kt9adfIolefm\nICsfIETnkHRpwF3RurchKfjk\n-----END PRIVATE KEY-----\n",
"client_email": "svc-students-sf-drying-opt@sf-drying-optimization.iam.gserviceaccount.com",
"client_id": "106308201919438112497",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/svc-students-sf-drying-opt%40sf-drying-optimization.iam.gserviceaccount.com"
}
File added
No preview for this file type
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment