List of usage examples for org.springframework.http HttpHeaders setContentType
public void setContentType(@Nullable MediaType mediaType)
From source file:org.cloudfoundry.identity.uaa.login.SamlRemoteUaaController.java
@RequestMapping(value = "/oauth/token", method = RequestMethod.POST, params = "grant_type=password") @ResponseBody// w ww . ja v a 2 s .com public ResponseEntity<byte[]> tokenEndpoint(HttpServletRequest request, HttpEntity<byte[]> entity, @RequestParam Map<String, String> parameters, Map<String, Object> model, Principal principal) throws Exception { // Request has a password. Owner password grant with a UAA password if (null != request.getParameter("password")) { return passthru(request, entity, model); } else { // MultiValueMap<String, String> requestHeadersForClientInfo = new LinkedMultiValueMap<String, String>(); requestHeadersForClientInfo.add(AUTHORIZATION, request.getHeader(AUTHORIZATION)); ResponseEntity<byte[]> clientInfoResponse = getDefaultTemplate().exchange( getUaaBaseUrl() + "/clientinfo", HttpMethod.POST, new HttpEntity<MultiValueMap<String, String>>(null, requestHeadersForClientInfo), byte[].class); if (clientInfoResponse.getStatusCode() == HttpStatus.OK) { String path = extractPath(request); MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>(); map.setAll(parameters); if (principal != null) { map.set("source", "login"); map.set("client_id", getClientId(clientInfoResponse.getBody())); map.setAll(getLoginCredentials(principal)); map.remove("credentials"); // legacy vmc might break otherwise } else { throw new BadCredentialsException("No principal found in authorize endpoint"); } HttpHeaders requestHeaders = new HttpHeaders(); requestHeaders.putAll(getRequestHeaders(requestHeaders)); requestHeaders.remove(AUTHORIZATION.toLowerCase()); requestHeaders.remove(ACCEPT.toLowerCase()); requestHeaders.remove(CONTENT_TYPE.toLowerCase()); requestHeaders.setContentType(MediaType.APPLICATION_FORM_URLENCODED); requestHeaders.setAccept(Arrays.asList(MediaType.APPLICATION_JSON)); requestHeaders.remove(COOKIE); requestHeaders.remove(COOKIE.toLowerCase()); ResponseEntity<byte[]> response = getAuthorizationTemplate().exchange(getUaaBaseUrl() + "/" + path, HttpMethod.POST, new HttpEntity<MultiValueMap<String, String>>(map, requestHeaders), byte[].class); saveCookie(response.getHeaders(), model); byte[] body = response.getBody(); if (body != null) { HttpHeaders outgoingHeaders = getResponseHeaders(response.getHeaders()); return new ResponseEntity<byte[]>(response.getBody(), outgoingHeaders, response.getStatusCode()); } throw new IllegalStateException("Neither a redirect nor a user approval"); } else { throw new BadCredentialsException(new String(clientInfoResponse.getBody())); } } }
From source file:net.maritimecloud.identityregistry.controllers.ServiceController.java
/** * Returns keycloak.json the service identified by the given ID * * @return a reply.../* w ww . ja v a 2 s. com*/ * @throws McBasicRestException */ @RequestMapping(value = "/api/org/{orgMrn}/service/{serviceMrn}/jbossxml", method = RequestMethod.GET) @ResponseBody @PreAuthorize("hasRole('SERVICE_ADMIN') and @accessControlUtil.hasAccessToOrg(#orgMrn)") public ResponseEntity<String> getServiceJbossXml(HttpServletRequest request, @PathVariable String orgMrn, @PathVariable String serviceMrn) throws McBasicRestException { Organization org = this.organizationService.getOrganizationByMrn(orgMrn); if (org != null) { // Check that the entity being queried belongs to the organization if (!MrnUtil.getOrgShortNameFromOrgMrn(orgMrn) .equals(MrnUtil.getOrgShortNameFromEntityMrn(serviceMrn))) { throw new McBasicRestException(HttpStatus.BAD_REQUEST, MCIdRegConstants.MISSING_RIGHTS, request.getServletPath()); } Service service = this.entityService.getByMrn(serviceMrn); if (service == null) { throw new McBasicRestException(HttpStatus.NOT_FOUND, MCIdRegConstants.ENTITY_NOT_FOUND, request.getServletPath()); } if (service.getIdOrganization().compareTo(org.getId()) == 0) { // Get the jboss xml for the client the service represents if it exists if (service.getOidcAccessType() != null && !service.getOidcAccessType().trim().isEmpty()) { keycloakAU.init(KeycloakAdminUtil.BROKER_INSTANCE); String jbossXml = keycloakAU.getClientJbossXml(service.getMrn()); HttpHeaders responseHeaders = new HttpHeaders(); responseHeaders.setContentLength(jbossXml.length()); responseHeaders.setContentType(MediaType.APPLICATION_XML); return new ResponseEntity<>(jbossXml, responseHeaders, HttpStatus.OK); } throw new McBasicRestException(HttpStatus.NOT_FOUND, MCIdRegConstants.OIDC_CONF_FILE_NOT_AVAILABLE, request.getServletPath()); } throw new McBasicRestException(HttpStatus.FORBIDDEN, MCIdRegConstants.MISSING_RIGHTS, request.getServletPath()); } else { throw new McBasicRestException(HttpStatus.NOT_FOUND, MCIdRegConstants.ORG_NOT_FOUND, request.getServletPath()); } }
From source file:net.sf.jsog.spring.StringJsogHttpMessageConverterTest.java
@Test public void testWriteNoDefaultContentTypeCharset() throws Exception { // Setup//from ww w . j a v a2 s . c o m instance.setOutputContentType(MediaType.APPLICATION_JSON); String expected = "\"foobar\""; String encoding = "ISO-8859-1"; HttpOutputMessage output = createMock(HttpOutputMessage.class); ByteArrayOutputStream baos = new ByteArrayOutputStream(); expect(output.getBody()).andReturn(baos); HttpHeaders headers = createMock(HttpHeaders.class); expect(output.getHeaders()).andReturn(headers).anyTimes(); headers.setContentType(JSON_CONTENT_TYPE); expectLastCall(); headers.setContentLength(expected.getBytes(encoding).length); expectLastCall(); // Execution replay(headers, output); instance.write(JSOG.parse(expected), JSON_CONTENT_TYPE, output); // Verification verify(headers, output); assertEquals(expected, baos.toString(encoding)); }
From source file:nu.yona.server.device.rest.DeviceController.java
@RequestMapping(value = "/{deviceId}/apple.mobileconfig", method = RequestMethod.GET) @ResponseBody// www . j ava 2s .c o m public ResponseEntity<byte[]> getAppleMobileConfig( @RequestHeader(value = Constants.PASSWORD_HEADER) Optional<String> password, @PathVariable UUID userId, @PathVariable UUID deviceId) { HttpHeaders headers = new HttpHeaders(); headers.setContentType(new MediaType("application", "x-apple-aspen-config")); try (CryptoSession cryptoSession = CryptoSession.start(password, () -> userService.doPreparationsAndCheckCanAccessPrivateData(userId))) { return new ResponseEntity<>(getDeviceSpecificAppleMobileConfig(deviceService.getDevice(deviceId)), headers, HttpStatus.OK); } }
From source file:net.sf.jsog.spring.StringJsogHttpMessageConverterTest.java
@Test public void testWrite() throws Exception { // TODO: Make this test more robust // Setup/*from w w w . jav a 2s. c om*/ String encoding = "ISO-8859-1"; String expected = "\"foobar\""; MediaType contentType = JSON_CONTENT_TYPE; HttpOutputMessage output = createMock(HttpOutputMessage.class); ByteArrayOutputStream baos = new ByteArrayOutputStream(); expect(output.getBody()).andReturn(baos); HttpHeaders headers = createMock(HttpHeaders.class); expect(output.getHeaders()).andReturn(headers).anyTimes(); headers.setContentType(contentType); expectLastCall(); headers.setContentLength(expected.getBytes(encoding).length); expectLastCall(); // Execution replay(headers, output); instance.write(JSOG.parse(expected), contentType, output); // Verification verify(headers, output); assertEquals(expected, baos.toString(encoding)); }
From source file:net.sf.jsog.spring.StringJsogHttpMessageConverterTest.java
@Test public void testWriteObject() throws Exception { // TODO: Make this test more robust // Setup/* w ww. j a v a 2s. c o m*/ String encoding = "ISO-8859-1"; String expected = "{\"foo\":\"bar\"}"; MediaType contentType = JSON_CONTENT_TYPE; HttpOutputMessage output = createMock(HttpOutputMessage.class); ByteArrayOutputStream baos = new ByteArrayOutputStream(); expect(output.getBody()).andReturn(baos); HttpHeaders headers = createMock(HttpHeaders.class); expect(output.getHeaders()).andReturn(headers).anyTimes(); headers.setContentType(contentType); expectLastCall(); headers.setContentLength(expected.getBytes(encoding).length); expectLastCall(); // Execution replay(headers, output); instance.write(JSOG.parse(expected), contentType, output); // Verification verify(headers, output); assertEquals(expected, baos.toString(encoding)); }
From source file:net.sf.jsog.spring.StringJsogHttpMessageConverterTest.java
@Test public void testWriteArray() throws Exception { // TODO: Make this test more robust // Setup/*from www . j a v a2 s. c o m*/ String encoding = "ISO-8859-1"; String expected = "[\"foo\",\"bar\"]"; MediaType contentType = JSON_CONTENT_TYPE; HttpOutputMessage output = createMock(HttpOutputMessage.class); ByteArrayOutputStream baos = new ByteArrayOutputStream(); expect(output.getBody()).andReturn(baos); HttpHeaders headers = createMock(HttpHeaders.class); expect(output.getHeaders()).andReturn(headers).anyTimes(); headers.setContentType(contentType); expectLastCall(); headers.setContentLength(expected.getBytes(encoding).length); expectLastCall(); // Execution replay(headers, output); instance.write(JSOG.parse(expected), contentType, output); // Verification verify(headers, output); assertEquals(expected, baos.toString(encoding)); }
From source file:net.sf.jsog.spring.StringJsogHttpMessageConverterTest.java
@Test public void testWriteCustomEncoding() throws Exception { // TODO: Make this test more robust // Setup/* w w w. j a v a 2s . co m*/ String encoding = "UTF-8"; instance.setEncoding(encoding); String expected = "\"foobar\""; MediaType contentType = JSON_CONTENT_TYPE; HttpOutputMessage output = createMock(HttpOutputMessage.class); ByteArrayOutputStream baos = new ByteArrayOutputStream(); expect(output.getBody()).andReturn(baos); HttpHeaders headers = createMock(HttpHeaders.class); expect(output.getHeaders()).andReturn(headers).anyTimes(); headers.setContentType(contentType); expectLastCall(); headers.setContentLength(expected.getBytes(encoding).length); expectLastCall(); // Execution replay(headers, output); instance.write(JSOG.parse(expected), contentType, output); // Verification verify(headers, output); assertEquals(expected, baos.toString(encoding)); }
From source file:net.sf.jsog.spring.StringJsogHttpMessageConverterTest.java
@Test public void testWriteCustomEncodingSetByCharset() throws Exception { // TODO: Make this test more robust // Setup//w w w .j a va2 s .co m String encoding = "UTF-8"; instance.setEncoding(Charset.forName(encoding)); String expected = "\"foobar\""; MediaType contentType = JSON_CONTENT_TYPE; HttpOutputMessage output = createMock(HttpOutputMessage.class); ByteArrayOutputStream baos = new ByteArrayOutputStream(); expect(output.getBody()).andReturn(baos); HttpHeaders headers = createMock(HttpHeaders.class); expect(output.getHeaders()).andReturn(headers).anyTimes(); headers.setContentType(contentType); expectLastCall(); headers.setContentLength(expected.getBytes(encoding).length); expectLastCall(); // Execution replay(headers, output); instance.write(JSOG.parse(expected), contentType, output); // Verification verify(headers, output); assertEquals(expected, baos.toString(encoding)); }
From source file:net.sf.jsog.spring.StringJsogHttpMessageConverterTest.java
@Test public void testWriteCustomOutputContentType() throws Exception { // TODO: Make this test more robust // Setup/*from w w w . ja v a2s.co m*/ String encoding = "US-ASCII"; instance.setEncoding(encoding); String expected = "\"foobar\""; MediaType contentType = new MediaType("text", "plain", Charset.forName(encoding)); instance.setOutputContentType(contentType); HttpOutputMessage output = createMock(HttpOutputMessage.class); ByteArrayOutputStream baos = new ByteArrayOutputStream(); expect(output.getBody()).andReturn(baos); HttpHeaders headers = createMock(HttpHeaders.class); expect(output.getHeaders()).andReturn(headers).anyTimes(); headers.setContentType(contentType); expectLastCall(); headers.setContentLength(expected.getBytes(encoding).length); expectLastCall(); // Execution replay(headers, output); instance.write(JSOG.parse(expected), contentType, output); // Verification verify(headers, output); assertEquals(expected, baos.toString(encoding)); }