package Ġnet . ad opt openjdk . api . v 3 Ċ Ċ import Ġnet . ad opt openjdk . api . v 3 . models .* Ċ import Ġorg . eclipse . micro profile . openapi . annotations . Operation Ċ import Ġorg . eclipse . micro profile . openapi . annotations . media . Schema Ċ import Ġorg . eclipse . micro profile . openapi . annotations . parameters . Parameter Ċ import Ġorg . eclipse . micro profile . openapi . annotations . responses . API Response Ċ import Ġorg . eclipse . micro profile . openapi . annotations . responses . API Responses Ċ import Ġorg . eclipse . micro profile . openapi . annotations . tags . Tag Ċ import Ġorg . jboss . rest easy . annotations . jax rs . Path Param Ċ import Ġjava . net . URI Ċ import Ġjavax . ws . rs . GET Ċ import Ġjavax . ws . rs . Path Ċ import Ġjavax . ws . rs . Produces Ċ import Ġjavax . ws . rs . core . MediaType Ċ import Ġjavax . ws . rs . core . Response ĊĊ Ċ @ Tag ( name Ġ= Ġ" Binary ") Ċ @ Path ("/ v 3 / binary /") Ċ @ Produces ( MediaType . APPLICATION _ JSON ) Ċ class ĠBinary Resource Ġ{ ĊĊĠĠĠ Ġ@ GET ĊĠĠĠ Ġ@ Path ("{ release _ type }/{ version }/{ os }/{ arch }/{ release _ name }/{ binary _ type }/{ jvm _ impl }/{ heap _ size }/{ vendor }") ĊĠĠĠ Ġ@ Produces (" application / octet - stream ") ĊĠĠĠ Ġ@ Operation ( summary Ġ= Ġ" Redirect s Ġto Ġthe Ġbinary Ġthat Ġmatches Ġyour Ġcurrent Ġquery ", Ġdescription Ġ= Ġ" Redirect s Ġto Ġthe Ġbinary Ġthat Ġmatches Ġyour Ġcurrent Ġquery ") ĊĠĠĠ Ġ@ API Responses ( value Ġ= Ġ[ ĊĠĠĠĠĠĠĠ ĠAPI Response ( response Code Ġ= Ġ" 3 0 2 ", Ġdescription Ġ= Ġ" link Ġto Ġbinary Ġthat Ġmatches Ġyour Ġcurrent Ġquery "), ĊĠĠĠĠĠĠĠ ĠAPI Response ( response Code Ġ= Ġ" 4 0 0 ", Ġdescription Ġ= Ġ" bad Ġinput Ġparameter ") ĊĠĠĠ Ġ]) ĊĠĠĠ Ġfun Ġreturn Binary ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" release _ type ", Ġdescription Ġ= Ġ" Release Ġtype ", Ġrequired Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" release _ type ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelease _ type : ĠRelease Type ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" version ", Ġdescription Ġ= Ġ" Feature Ġrelease Ġversion Ġe . g . Ġ 8 , 9 , 1 0 , 1 1 , 1 2 , 1 3 ", Ġrequired Ġ= Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġschema Ġ= ĠSchema ( defaultValue Ġ= Ġ" 8 ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" version ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġversion : ĠInt ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" os ", Ġdescription Ġ= Ġ" Operating ĠSystem ", Ġrequired Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" os ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġos : ĠOperating System ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" arch ", Ġdescription Ġ= Ġ" Architecture ", Ġrequired Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" arch ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarch : ĠArchitecture ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" release _ name ", Ġdescription Ġ= Ġ" Release Ġe . g Ġlatest , Ġj dk 8 u 1 7 2 - b 0 0 - 2 0 1 8 0 7 1 6 1 8 0 0 ", Ġrequired Ġ= Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġschema Ġ= ĠSchema ( defaultValue Ġ= Ġ" latest ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" release _ name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrelease _ name : ĠString ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" binary _ type ", Ġdescription Ġ= Ġ" Binary ĠType ", Ġrequired Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" binary _ type ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinary _ type : ĠBinary Type ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" jvm _ impl ", Ġdescription Ġ= Ġ" OpenJDK ĠImplementation ", Ġrequired Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" jvm _ impl ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġj vm _ impl : ĠJ vm Impl ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" heap _ size ", Ġdescription Ġ= Ġ" Heap ĠSize ", Ġrequired Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" heap _ size ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheap _ size : ĠHeap Size ?, ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Parameter ( name Ġ= Ġ" vendor ", Ġdescription Ġ= Ġ" Vendor ", Ġrequired Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path Param (" vendor ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvendor : ĠVendor ? ĊĠĠĠ Ġ): ĠResponse Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResponse . status ( Response . Status . FOUND ). location ( URI . create (" resource / location ")). build () ĊĠĠĠ Ġ} Ċ } Ċ