blob: 0fb0688aad9daf321bb272d65b711627a2f79c60 [file] [log] [blame]
margarethaa452c5e2018-04-25 22:48:09 +02001package de.ids_mannheim.korap.oauth2.entity;
margaretha31a9f522018-04-03 20:40:45 +02002
margarethab1081b12018-07-03 23:35:01 +02003import javax.persistence.CascadeType;
margaretha31a9f522018-04-03 20:40:45 +02004import javax.persistence.Column;
5import javax.persistence.Entity;
6import javax.persistence.EnumType;
7import javax.persistence.Enumerated;
margarethab1081b12018-07-03 23:35:01 +02008import javax.persistence.FetchType;
margaretha31a9f522018-04-03 20:40:45 +02009import javax.persistence.Id;
margarethab1081b12018-07-03 23:35:01 +020010import javax.persistence.JoinColumn;
11import javax.persistence.OneToOne;
margaretha31a9f522018-04-03 20:40:45 +020012import javax.persistence.Table;
13
margarethaa452c5e2018-04-25 22:48:09 +020014import de.ids_mannheim.korap.oauth2.constant.OAuth2ClientType;
margaretha31a9f522018-04-03 20:40:45 +020015import lombok.Getter;
16import lombok.Setter;
17
18/**
19 * @author margaretha
20 *
21 */
22@Getter
23@Setter
24@Entity
25@Table(name = "oauth2_client")
26public class OAuth2Client {
27
28 @Id
29 private String id;
margaretha0e8f4e72018-04-05 14:11:52 +020030 private String name;
margaretha6d61a552018-04-10 19:26:44 +020031 // Secret hashcode is stored instead of plain secret
margaretha31a9f522018-04-03 20:40:45 +020032 private String secret;
33 @Enumerated(EnumType.STRING)
margaretha0e8f4e72018-04-05 14:11:52 +020034 private OAuth2ClientType type;
margaretha6374f722018-04-17 18:45:57 +020035 @Column(name = "native")
36 private boolean isNative;
margaretha31a9f522018-04-03 20:40:45 +020037 @Column(name = "redirect_uri")
38 private String redirectURI;
margarethaf839dde2018-04-16 17:52:57 +020039 @Column(name = "registered_by")
margaretha0e8f4e72018-04-05 14:11:52 +020040 private String registeredBy;
margarethafb027f92018-04-23 20:00:13 +020041 private String description;
margaretha0e8f4e72018-04-05 14:11:52 +020042
margarethab1081b12018-07-03 23:35:01 +020043 @OneToOne(fetch = FetchType.LAZY, cascade=CascadeType.ALL)
44 @JoinColumn(name = "url_id")
45 private OAuth2ClientUrl clientUrl;
46
margaretha31a9f522018-04-03 20:40:45 +020047 @Override
48 public String toString () {
margarethafb027f92018-04-23 20:00:13 +020049 return "id=" + id + ", name=" + name + ", secret=" + secret + ", type="
margarethab1081b12018-07-03 23:35:01 +020050 + type + ", isNative=" + isNative + ", redirectURI="
51 + redirectURI + ", registeredBy=" + registeredBy
52 + ", description=" + description;
margaretha31a9f522018-04-03 20:40:45 +020053 }
54}