diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/api/DeviceManagementService.java b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/api/DeviceManagementService.java index f4eb04cb42f..2b9a2254f21 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/api/DeviceManagementService.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/api/DeviceManagementService.java @@ -67,7 +67,6 @@ import org.wso2.carbon.device.mgt.jaxrs.beans.ErrorResponse; import org.wso2.carbon.device.mgt.jaxrs.beans.OperationRequest; import org.wso2.carbon.device.mgt.jaxrs.beans.OperationStatusBean; import org.wso2.carbon.device.mgt.jaxrs.util.Constants; -import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; import javax.validation.constraints.Size; @@ -855,7 +854,7 @@ public interface DeviceManagementService { name = "enrolmentGuide", value = "The details of the enrolment path suggested.", required = true) - MultipartFile enrolmentGuide); + String enrolmentGuide); @POST @Produces(MediaType.APPLICATION_JSON) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/DeviceManagementServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/DeviceManagementServiceImpl.java index 78c2280d4e6..80e70aaeff7 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/DeviceManagementServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.api/src/main/java/org/wso2/carbon/device/mgt/jaxrs/service/impl/DeviceManagementServiceImpl.java @@ -132,7 +132,6 @@ import org.wso2.carbon.policy.mgt.core.PolicyManagerService; import org.wso2.carbon.user.api.UserStoreException; import org.wso2.carbon.user.core.service.RealmService; import org.wso2.carbon.utils.multitenancy.MultitenantUtils; -import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; import javax.ws.rs.Consumes; @@ -823,37 +822,20 @@ public class DeviceManagementServiceImpl implements DeviceManagementService { @POST @Path("/enrollment/guide") @Override - public Response sendEnrollmentGuide(MultipartFile enrolmentGuide) { + public Response sendEnrollmentGuide(String enrolmentGuide) { if (log.isDebugEnabled()) { log.debug("Sending enrollment invitation mail to existing user."); } DeviceManagementProviderService dms = DeviceMgtAPIUtils.getDeviceManagementService(); try { -// Set recipients = new HashSet<>(); -// recipients.add(email); -// Properties props = new Properties(); -// props.setProperty("enrolment-guide", enrolmentGuide); -// -// EmailMetaInfo metaInfo = new EmailMetaInfo(recipients, props); -// dms.sendEnrolmentInvitation("enrolment-guide-template", metaInfo); dms.sendEnrolmentGuide(enrolmentGuide); return Response.status(Response.Status.OK).entity("Invitation mails have been sent.").build(); } catch (DeviceManagementException e) { - String msg = "Error occurred while inviting user to enrol their device"; + String msg = "Error occurred sending mail to group in enrollment guide"; log.error(msg, e); return Response.serverError().entity( new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build(); - } catch (ConfigurationManagementException e) { - String msg = "Error occurred while sending the email invitations. Mail server not configured."; - return Response.serverError().entity( - new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build(); - } catch (IOException e) { - e.printStackTrace(); - String msg = "testtttt."; - return Response.serverError().entity( - new ErrorResponse.ErrorResponseBuilder().setMessage(msg).build()).build(); } -// return Response.status(Response.Status.OK).entity("Invitation mails have been sent.").build(); } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java index 2be028d0a2b..4ea3cd30de5 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java @@ -66,8 +66,8 @@ import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException; import org.wso2.carbon.device.mgt.core.dto.DeviceType; import org.wso2.carbon.device.mgt.core.dto.DeviceTypeVersion; import org.wso2.carbon.device.mgt.common.geo.service.GeoCluster; -import org.springframework.web.multipart.MultipartFile; +import javax.mail.MessagingException; import java.io.IOException; import java.sql.SQLException; import java.sql.Timestamp; @@ -647,7 +647,7 @@ public interface DeviceManagementProviderService { void sendEnrolmentInvitation(String templateName, EmailMetaInfo metaInfo) throws DeviceManagementException, ConfigurationManagementException; - void sendEnrolmentGuide(MultipartFile enrolmentGuide) throws DeviceManagementException, ConfigurationManagementException, IOException; + void sendEnrolmentGuide(String enrolmentGuide) throws DeviceManagementException; void sendRegistrationEmail(EmailMetaInfo metaInfo) throws DeviceManagementException, ConfigurationManagementException; diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java index 16b562b35b3..8e38720f40a 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java @@ -161,7 +161,6 @@ import org.wso2.carbon.stratos.common.beans.TenantInfoBean; import org.wso2.carbon.tenant.mgt.services.TenantMgtAdminService; import org.wso2.carbon.user.api.UserStoreException; import org.wso2.carbon.utils.multitenancy.MultitenantConstants; -import org.springframework.web.multipart.MultipartFile; import javax.mail.*; import javax.xml.bind.JAXBContext; @@ -1582,52 +1581,13 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv } @Override - public void sendEnrolmentGuide(MultipartFile enrolmentGuide) throws DeviceManagementException, ConfigurationManagementException, IOException { - -// String fileName = ""; -// MultivaluedMap multivaluedMap = null; -// String fileName = null; -// InputStream inputStream = null; -// String uploadFilePath = null; -// -// Map> map = enrolmentGuide.getFormDataMap(); -// List inputParts = map.get("file"); -// -// for (InputPart inputPart : inputParts) { -// -// try { -// -// multivaluedMap = inputPart.getHeaders(); -// fileName = getFileName(multivaluedMap); -// -// //convert the uploaded file to inputstream -// InputStream inputStream = inputPart.getBody(InputStream.class,null); -// -// byte [] bytes = IOUtils.toByteArray(inputStream); -// -// //constructs upload file path -// fileName = UPLOADED_FILE_PATH + fileName; -// -// writeFile(bytes,fileName); -// -// System.out.println("Done"); -// -// } catch (IOException e) { -// e.printStackTrace(); -// } -// -// } - - // Recipient's email ID needs to be mentioned. + public void sendEnrolmentGuide(String enrolmentGuide) { -// String charset = enrolmentGuide.getFormDataMap().get("_charset_").get(0).getBodyAsString(); -// File file = (File) enrolmentGuide.getFormDataMap().get("file").get(0); String to = "oshani@entgra.io"; // Sender's email ID needs to be mentioned String from = "oshsilva1996@gmail.com"; - // Assuming you are sending email from through gmails smtp String host = "smtp.gmail.com"; // Get system properties @@ -1639,13 +1599,11 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv properties.put("mail.smtp.ssl.enable", "true"); properties.put("mail.smtp.auth", "true"); - // Get the Session object.// and pass username and password + // Get the Session object Session session = Session.getInstance(properties, new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { - return new PasswordAuthentication("oshsilva1996@gmail.com", "layzvxhcxlwzkgwf"); - } }); @@ -1654,86 +1612,15 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv session.setDebug(true); try { - // Create a default MimeMessage object. MimeMessage message = new MimeMessage(session); - - // Set From: header field of the header. message.setFrom(new InternetAddress(from)); - - // Set To: header field of the header. message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); - -// // Set Subject: header field message.setSubject("Enrollment Guide Triggered " + ++count); - -// message.setText(enrolmentGuide); - -// Multipart multipart = new MimeMultipart(); -// -// MimeBodyPart attachmentPart = new MimeBodyPart(); -// -// MimeBodyPart textPart = new MimeBodyPart(); -// -// try { -// -//// String charset = enrolmentGuide.getFormDataMap().get("_charset_").get(0).getBodyAsString(); -//// InputPart file = enrolmentGuide.getFormDataMap().get("file").get(0); -//// InputStream inputStream = file.getBody(InputStream.class, null); -//// BufferedReader br = new BufferedReader(new InputStreamReader(inputStream, charset)); -//// String line; -//// StringBuilder content = new StringBuilder(); -//// while ((line = br.readLine()) != null) { -//// content.append(line); -//// } -//// -//// writeFile(content, "test"); -//// -//// File f =new File("H:\\pepipost_tutorials\\javaemail1.PNG"); -// -// attachmentPart.attachFile(file); -// textPart.setText("This is text"); -// multipart.addBodyPart(textPart); -// multipart.addBodyPart(attachmentPart); -// -// } catch (IOException e) { -// -// e.printStackTrace(); -// -// } -// -// message.setContent(multipart); - - System.out.println("sending..."); - // Send message + message.setText(enrolmentGuide); Transport.send(message); - System.out.println("Sent message successfully...."); } catch (MessagingException mex) { mex.printStackTrace(); } -// -// try { -// // Create a default MimeMessage object. -// MimeMessage message = new MimeMessage(session); -// -// // Set From: header field of the header. -// message.setFrom(new InternetAddress(from)); -// -// // Set To: header field of the header. -// message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); -// -// // Set Subject: header field -// message.setSubject("Enrollment Guide Triggered " + ++count); -// -// // Now set the actual message -// message.setText("enrolmentGuide"); -// -// System.out.println("sending..."); -// // Send message -// Transport.send(message); -// System.out.println("Sent message successfully...."); -// } catch (MessagingException mex) { -// mex.printStackTrace(); -// } } @Override