Skip to content

Commit

Permalink
add setDefaultDomain endpoint
Browse files Browse the repository at this point in the history
  • Loading branch information
MrFoxogen committed Mar 14, 2024
1 parent 7323ba1 commit 77dcf61
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -87,4 +87,9 @@ public ResponseEntity<DomainEntity> update(@RequestBody DomainUpdateDTO domainUp
public ResponseEntity<Boolean> isDomainNameReserved(@PathVariable String domainName) {
return ok(domainService.isNameReserved(domainName));
}

@PutMapping("/{id}/default")
public ResponseEntity<Boolean> setDefaultDomain(@PathVariable String id) {
return ok(domainService.setDefaultDomain(id));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,16 @@ public interface DomainRepository extends JpaRepository<DomainEntity, String> {
Optional<DomainEntity> findDomainEntityByDomainName(String domainName);

void deleteAllByTransactionIn(Collection<PayableTransactionEntity> transaction);

@Modifying
@Query(nativeQuery = true,
value = """
UPDATE domains
SET is_default = CASE
WHEN id = :id THEN true
ELSE false
END
WHERE owner_address = (select owner_address from domains where id = :id)
""")
int setDefaultDomain(String id);
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,5 @@ public interface DomainService {
Optional<DomainEntity> retrieve(String id);
DomainEntity update(DomainUpdateDTO domainUpdateDTO);
Boolean isNameReserved(String name);
Boolean setDefaultDomain(String id);
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.domain.Page;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.Optional;

Expand Down Expand Up @@ -64,4 +65,10 @@ public DomainEntity update(DomainUpdateDTO domainUpdateDTO) {
public Boolean isNameReserved(String name) {
return domainRepository.findDomainEntityByDomainName(name).isPresent();
}

@Override
@Transactional
public Boolean setDefaultDomain(String id) {
return domainRepository.setDefaultDomain(id) > 0;
}
}

0 comments on commit 77dcf61

Please sign in to comment.