Skip to content

Instantly share code, notes, and snippets.

View atesibrahim's full-sized avatar

Ibrahim Ates atesibrahim

View GitHub Profile
@Controller
@AllArgsConstructor
public class BookMutation {
BookRepository bookRepository;
@MutationMapping
public BookOutput newBook(@Argument("input") NewBook newBook){
Book book = Book.builder().authorName(newBook.getAuthorName()).title(newBook.getTitle()).build();
Book book1 = bookRepository.save(book);
public interface BookRepository extends JpaRepository<Book, Long> {
Book findBookByTitle(String title);
}
@Controller
@AllArgsConstructor
public class BookQuery{
private final BookRepository bookRepository;
@QueryMapping
public Iterable<Book> allBook(){
return bookRepository.findAll();
}
type Query {
allBook: [Book]
getBookByTitle(filter: BookInput): Book
}
type Mutation {
newBook(input: NewBook): BookOutput
deleteBook(input:BookInput): BookOutput
}
type Book {
id: Int
title: String
authorName: String
}
input BookInput {
id: Int
title: String
authorName: String
@atesibrahim
atesibrahim / BookInput.java
Created August 1, 2022 11:15
Graphql model input
@Getter
@Setter
@Builder
public class BookInput {
private Long id;
private String title;
private String authorName;
}
@atesibrahim
atesibrahim / Book.java
Created August 1, 2022 11:06
GraphQL book
@Getter
@Setter
@RequiredArgsConstructor
@AllArgsConstructor
@Builder
@Entity
@Table(name = "Book")
public class Book {
@Id
@atesibrahim
atesibrahim / pom.xml
Created July 19, 2022 14:14
Couchbase Example
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-couchbase</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
@atesibrahim
atesibrahim / Book.java
Created July 19, 2022 14:12
Coucbase Example
@Builder
@Data
@AllArgsConstructor
@Document
public class Book {
@Id
private final String id;
@Field
@Configuration
public class CouchbaseConfig extends AbstractCouchbaseConfiguration {
@Override
public String getConnectionString() {
return "127.0.0.1";
}
@Override
public String getUserName() {