Skip to content
Snippets Groups Projects
Commit 83f380f9 authored by Bruno Teixeira's avatar Bruno Teixeira
Browse files

add Models and Retrofit Client

parent 05ae4656
No related branches found
No related tags found
No related merge requests found
......@@ -13,14 +13,16 @@ public class Trip {
private Date endOfTrip;
private List<String> tripParticipants;
private List<String> transactions;
private List<String> admins;
public Trip(String tripName, Date startOfTrip, Date endOfTrip, List<String> tripParticipants,
List<String> transactions) {
List<String> transactions, List<String> admins) {
this.tripName = tripName;
this.startOfTrip = startOfTrip;
this.endOfTrip = endOfTrip;
this.tripParticipants = tripParticipants;
this.transactions=transactions;
this.transactions = transactions;
this.admins = admins;
}
public String getTripId() {
......@@ -70,4 +72,12 @@ public class Trip {
public void setTransactions(List<String> transactions) {
this.transactions = transactions;
}
public List<String> getAdmins() {
return admins;
}
public void setAdmins(List<String> admins) {
this.admins = admins;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
......
......@@ -3,7 +3,10 @@ apply plugin: 'com.android.application'
android {
compileSdkVersion 29
buildToolsVersion "29.0.3"
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
applicationId "com.example.mobileapp"
minSdkVersion 16
......@@ -35,6 +38,8 @@ dependencies {
implementation "androidx.recyclerview:recyclerview-selection:1.1.0-rc01"
implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation group: 'com.squareup.retrofit2', name: 'retrofit', version: '2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.3.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
......
package com.example.mobileapp.model;
public class Transaction {
String transactionId;
private String debtor; //Schuldner
private String creditor; // Gläubiger
private String currency; // vllt Enum?
private double loan;
public Transaction(String debtor, String creditor, String currency, double loan) {
this.debtor = debtor;
this.creditor = creditor;
this.currency = currency;
this.loan = loan;
}
public String getTransactionId() {
return transactionId;
}
public void setTransactionId(String transactionId) {
this.transactionId = transactionId;
}
public String getDebtor() {
return debtor;
}
public void setDebtor(String debtor) {
this.debtor = debtor;
}
public String getCreditor() {
return creditor;
}
public void setCreditor(String creditor) {
this.creditor = creditor;
}
public String getCurrency() {
return currency;
}
public void setCurrency(String currency) {
this.currency = currency;
}
public double getLoan() {
return loan;
}
public void setLoan(double loan) {
this.loan = loan;
}
}
package com.example.mobileapp.model;
import java.util.Date;
import java.util.List;
public class Trip {
private String tripId;
private String tripName;
private Date startOfTrip;
private Date endOfTrip;
private List<String> tripParticipants;
private List<String> transactions;
private List<String> admins;
public Trip(String tripName, Date startOfTrip, Date endOfTrip, List<String> tripParticipants,
List<String> transactions, List<String> admins) {
this.tripName = tripName;
this.startOfTrip = startOfTrip;
this.endOfTrip = endOfTrip;
this.tripParticipants = tripParticipants;
this.transactions = transactions;
this.admins = admins;
}
public String getTripId() {
return tripId;
}
public void setTripId(String tripId) {
this.tripId = tripId;
}
public String getTripName() {
return tripName;
}
public void setTripName(String tripName) {
this.tripName = tripName;
}
public Date getStartOfTrip() {
return startOfTrip;
}
public void setStartOfTrip(Date startOfTrip) {
this.startOfTrip = startOfTrip;
}
public Date getEndOfTrip() {
return endOfTrip;
}
public void setEndOfTrip(Date endOfTrip) {
this.endOfTrip = endOfTrip;
}
public List<String> getTripParticipants() {
return tripParticipants;
}
public void setTripParticipants(List<String> tripParticipants) {
this.tripParticipants = tripParticipants;
}
public List<String> getTransactions() {
return transactions;
}
public void setTransactions(List<String> transactions) {
this.transactions = transactions;
}
public List<String> getAdmins() {
return admins;
}
public void setAdmins(List<String> admins) {
this.admins = admins;
}
}
package com.example.mobileapp.model;
public class User {
private String eMail;
private String name;
private String password;
public String geteMail() {
return eMail;
}
public void seteMail(String eMail) {
this.eMail = eMail;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "User{" +
"eMail='" + eMail + '\'' +
", name='" + name + '\'' +
", password='" + password + '\'' +
'}';
}
}
package com.example.mobileapp.networking;
import okhttp3.OkHttpClient;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
/**
* https://www.baeldung.com/retrofit
*/
public class RetrofitClient {
private static OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
private static Retrofit retrofit;
private static final String BASE_URL = "http://localhost:8080/";
public static Retrofit getRetrofitInstance() {
if (retrofit == null) {
retrofit = new retrofit2.Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient.build())
.build();
}
return retrofit;
}
}
package com.example.mobileapp.networking;
import com.example.mobileapp.model.Trip;
import java.util.List;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface TripService {
@GET("trip/getTripById")
public Call<Trip> getTripId(@Query("id") String id);
@GET("/trip/getTripsByUser")
public Call<List<Trip>> getTripsByUser(@Query("eMail") String eMail);
@POST("/trip/addTrip")
public Call<String> addTrip(@Body Trip trip);
}
package com.example.mobileapp.networking;
import com.example.mobileapp.model.User;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface UserService {
@GET("user/getByEMail")
public Call<User> getUserByEmail(@Query("eMail") String eMail);
@POST("user/registrateUser")
public Call<String> registrateUser(@Body User user);
@POST("user/addUserToTrip")
public Call<String> addUserToTrip(@Body User user);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment