クラス ControllerEntityLinks

java.lang.ObjectSE
org.springframework.hateoas.server.core.AbstractEntityLinks
org.springframework.hateoas.server.core.ControllerEntityLinks
実装されたすべてのインターフェース:
EntityLinksorg.springframework.plugin.core.Plugin<ClassSE<?>>

public class ControllerEntityLinks extends AbstractEntityLinks
特定の URI マッピング構造を想定する EntityLinks 実装:
  1. アノテーション付きコントローラーがコレクションとアイテムのリソースを公開することを宣言するクラスレベルの ExposesResourceFor アノテーション。
  2. コレクションリソースのベース URI を形成する RequestMapping アノテーション。
  3. 少なくとも 1 つの HTTP メソッドを実際に処理するためのマッピングアノテーションを含むコントローラーメソッド。
  4. 項目リソースを識別するためにパス変数を使用して従属リソースをマップするコントローラーメソッド。
 @Controller
 @ExposesResourceFor(Order.class)
 @RequestMapping("/orders")
 class OrderController {

   @GetMapping
   ResponseEntity orders(…) { … }

   @GetMapping("/{id}")
   ResponseEntity order(@PathVariable("id") … ) { … }
 }
 
作成者:
Oliver Gierke
  • コンストラクターの詳細

    • ControllerEntityLinks

      public ControllerEntityLinks(IterableSE<? extends ClassSE<?>> controllerTypes, LinkBuilderFactory<? extends LinkBuilder> linkBuilderFactory)
      指定されたアノテーションの構成済みクラスをインスペクションする新しい ControllerEntityLinks を作成します。
      パラメーター:
      controllerTypes - インスペクションするコントローラークラスは、null であってはなりません。
      linkBuilderFactory - リンクの作成に使用する LinkBuilder は null であってはなりません。
  • メソッドの詳細

    • linkFor

      public LinkBuilder linkFor(ClassSE<?> entity)
      インターフェースからコピーされた説明: EntityLinks
      指定されたエンティティ型を管理するコントローラーへのリンクを作成できる LinkBuilder を返します。コントローラーが完全に展開された URI テンプレートにマップされていることを期待します (つまり、パス変数が使用されていません)。
      パラメーター:
      entity - 指すエンティティ型。null であってはなりません。
      戻り値:
      コレクションリソースを指す LinkBuilder。null になることはありません。
    • linkFor

      public LinkBuilder linkFor(ClassSE<?> entity, ObjectSE... parameters)
      インターフェースからコピーされた説明: EntityLinks
      指定されたエンティティ型を管理するコントローラーへのリンクを作成できる LinkBuilder を返し、指定されたパラメーターをバッキングコントローラーがマップされている URI テンプレートに展開します。
      パラメーター:
      entity - 指すエンティティ型。null であってはなりません。
      戻り値:
      コレクションリソースを指す LinkBuilder
    • linkToCollectionResource

      public Link linkToCollectionResource(ClassSE<?> entity)
      インターフェースからコピーされた説明: EntityLinks
      指定された型のコレクションリソースを指す Link を作成します。リンクの関係型は実装クラスによって決定され、デフォルトで IanaLinkRelations.SELF に設定する必要があります。
      パラメーター:
      entity - 指すエンティティ型。null であってはなりません。
      戻り値:
      特定のエンティティ用に公開されたコレクションリソースを指す Link。null になることはありません。
    • linkToItemResource

      public Link linkToItemResource(ClassSE<?> entity, ObjectSE id)
      インターフェースからコピーされた説明: EntityLinks
      指定されたエンティティ型と ID をサポートするアイテムリソースを指す Link を作成します。リンクの関係型は実装クラスによって決定され、デフォルトで IanaLinkRelations.SELF に設定する必要があります。
      パラメーター:
      entity - 指すエンティティ型。null であってはなりません。
      id - 指定された型のエンティティの識別子
      戻り値:
      指定された型と ID を持つエンティティ用に公開されたリソースを指す Link。null になることはありません。
    • supports

      public boolean supports(ClassSE<?> delimiter)