/// <summary> /// Describes the schema of the underlying data and services to the K2 platform. /// </summary> public void DescribeSchema() { //MailBox Mailbox mailboxServiceObject = new Mailbox(serviceBroker); mailboxServiceObject.Create(); //Message MailMessage mailmessageServiceObject = new MailMessage(serviceBroker); mailmessageServiceObject.Create(); //Attachment //MailAttachment mailAttachmentServiceObject = new MailAttachment(serviceBroker); //mailAttachmentServiceObject.Create(); //if (!serviceBroker.Service.ServiceObjects.Contains(obj)) //{ // serviceBroker.Service.ServiceObjects.Add(obj); //} //} }
/// <summary> /// SmartObject execution. HTTP calls and mapping return xml to SmartObject properties /// </summary> public void Execute(Property[] inputs, RequiredProperties required, Property[] returns, MethodType methodType, ServiceObject serviceObject) { serviceObject.Properties.InitResultTable(); if (serviceObject.Methods[0].Name.Equals("getmailbox") || serviceObject.Methods[0].Name.Equals("getinbox")) { Mailbox mailbox = new Mailbox(serviceBroker); mailbox.GetMailbox(inputs, required, returns, methodType, serviceObject); } if (serviceObject.Methods[0].Name.Equals("getallmessages") || serviceObject.Methods[0].Name.Equals("getmessages") || serviceObject.Methods[0].Name.Equals("searchmessagesbysubject") || serviceObject.Methods[0].Name.Equals("searchmessagesbybody") || serviceObject.Methods[0].Name.Equals("searchmessagesbyfrom")) { MailMessage msg = new MailMessage(serviceBroker); msg.GetMessages(inputs, required, returns, methodType, serviceObject); } if (serviceObject.Methods[0].Name.Equals("getmessagebyuid") || serviceObject.Methods[0].Name.Equals("getmessagebysubject")) { MailMessage msg = new MailMessage(serviceBroker); msg.GetMessageBy(inputs, required, returns, methodType, serviceObject); } if (serviceObject.Methods[0].Name.Equals("getallattachments")) { MailAttachment attach = new MailAttachment(serviceBroker); attach.GetAllAttachments(inputs, required, returns, methodType, serviceObject); } if (serviceObject.Methods[0].Name.Equals("getattachment")) { MailAttachment attach = new MailAttachment(serviceBroker); attach.GetAttachment(inputs, required, returns, methodType, serviceObject); } }