git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C31390
-using Microsoft.VisualStudio.TestTools.UnitTesting;\r
+using MaestroShared.Model;\r
using MediaCubeClient;\r
-using System.Net;\r
+using Microsoft.VisualStudio.TestTools.UnitTesting;\r
using System;\r
-using MaestroShared.Model;\r
+using System.Net;\r
\r
namespace IntegrationTests {\r
[TestClass]\r
[TestMethod]\r
public void TestNotify() {\r
MediaCubeApi client = new MediaCubeApi("http://localhost:8080/services/rest/jobengine/", null, null, 100, null);\r
- client.Notify("vasay@elgekko.net", "Újravágást kérek!");\r
+ client.Notify("vasay@elgekko.net", null, "Újravágást kérek!");\r
}\r
\r
}\r
"timeout": 1000\r
},\r
"wsserver": {\r
- "address": "ws://10.10.1.27/services/wsapi",\r
+ "address": "ws://10.10.1.29:88/services/wsapi",\r
"timeout": 1000\r
},\r
"jobTemplate": "retrieve-material.xml",\r
"timeout": 1000\r
}\r
},\r
- {\r
- "label": "Teszt",\r
- "processor": "FTPTargetProcessor",\r
- "outputFormat": "%ID%-%SOURCENAME%",\r
- "tag": "Betöltés",\r
- "killDateDays": 7,\r
- "saveArchiveMetadata": false,\r
- "sendEmailOnSuccess": true,\r
- "successEmailPattern": "A %ID% - %ITEMTITLE% anyag felkerült a szerverre.\r\nJSON: %JSON%",\r
- "successEmailRecipient": "vasary@elgekko.net",\r
- "remote": {\r
- "address": "ftp://10.10.1.105/TESZT/CHECK",\r
- "userName": "mediacube",\r
- "password": "Dn8t4gfHcK98o8hyPgLDhr5SgSji4JCxsfpMJsODikUp3nXgrM0UNCi45lLAK8ZOnmEneO44P9qpJ4QDqhctN6MxZodjJgdZTyoZKmSa+ECzEzLr/wPYNgxVaXrVotEy",\r
- "timeout": 1000\r
- }\r
- },\r
+ {\r
+ "label": "Teszt",\r
+ "processor": "FTPTargetProcessor",\r
+ "outputFormat": "%ID%-%SOURCENAME%",\r
+ "tag": "Betöltés",\r
+ "killDateDays": 7,\r
+ "saveArchiveMetadata": false,\r
+ "sendEmailOnSuccess": true,\r
+ "successEmailPattern": "%JSON%",\r
+ "successEmailSubject": "%ID% - %ITEMTITLE% sikeres feltöltése",\r
+ "successEmailRecipient": "vasary@elgekko.net",\r
+ "remote": {\r
+ "address": "ftp://10.10.1.105/TESZT/CHECK",\r
+ "userName": "mediacube",\r
+ "password": "Dn8t4gfHcK98o8hyPgLDhr5SgSji4JCxsfpMJsODikUp3nXgrM0UNCi45lLAK8ZOnmEneO44P9qpJ4QDqhctN6MxZodjJgdZTyoZKmSa+ECzEzLr/wPYNgxVaXrVotEy",\r
+ "timeout": 1000\r
+ }\r
+ },\r
{\r
"label": "Napi megtekintőbe",\r
"processor": "FTPTargetProcessor",\r
}\r
\r
static public string Get(string pattern, string id, string inputName, string outputName, string userName, string text, DateTime? storedDateTime = null, string json = null, string itemTitle = null, string mediaTitle = null) {\r
+ if (pattern == null)\r
+ return null;\r
string idRoot = id != null && id.Contains(UNDERSCORE) ? id.Split(UNDERSCORE[0])[0] : id;\r
DateTime dt = storedDateTime == null ? DateTime.Now : (DateTime)storedDateTime;\r
- var trimmedJSON = json;\r
- if (json != null) {\r
- trimmedJSON = json.Replace("\r", "").Replace("\n", "");\r
- }\r
string result = pattern\r
.Replace(PATTERN_ID, id)\r
.Replace(PATTERN_IDROOT, idRoot)\r
.Replace(PATTERN_GUID, ((ShortGuid)Guid.NewGuid()).ToString())\r
.Replace(PATTERN_TIMESTAMP, dt.ToString(DATETIME_FORMAT, CultureInfo.InvariantCulture))\r
.Replace(PATTERN_DATESTAMP, dt.ToString(DATE_FORMAT_NODOTS, CultureInfo.InvariantCulture))\r
- .Replace(PATTERN_JSON, trimmedJSON)\r
+ .Replace(PATTERN_JSON, json)\r
.Replace(PATTERN_ITEMTITLE, itemTitle)\r
.Replace(PATTERN_MEDIATITLE, mediaTitle);\r
\r
public string ErrorEmailPattern { get; set; }\r
public bool SendEmailOnSuccess { get; set; }\r
public string SuccessEmailRecipient { get; set; }\r
+ public string SuccessEmailSubject { get; set; }\r
public string SuccessEmailPattern { get; set; }\r
public string[] Reference { get; set; }\r
public bool NexioServer { get; set; }\r
namespace MaestroShared.Interfaces {\r
public interface IMediaCubeApi {\r
T Create<T>(object data);\r
- void Notify(string to, string content);\r
+ void Notify(string to, string subject, string content);\r
}\r
}\r
workFlowAction.successful = false;\r
logger.Error(e);\r
if (Parameters.TargetConfig.SendEmailOnError && !string.IsNullOrEmpty(Parameters.TargetConfig.ErrorEmailRecipient) && !String.IsNullOrEmpty(Parameters.TargetConfig.ErrorEmailPattern))\r
- SendEmail(Parameters.TargetConfig.ErrorEmailRecipient, Parameters.TargetConfig.ErrorEmailPattern);\r
+ SendEmail(Parameters.TargetConfig.ErrorEmailRecipient, null, Parameters.TargetConfig.ErrorEmailPattern);\r
} finally {\r
AfterExecute();\r
}\r
Parameters?.TrafficApi?.Approve(Parameters.VariantID, true, Parameters.MetadataKind, trafficItem, ifCompleted);\r
}\r
if (Parameters.TargetConfig.SendEmailOnSuccess && !String.IsNullOrEmpty(Parameters.TargetConfig.SuccessEmailRecipient) && !String.IsNullOrEmpty(Parameters.TargetConfig.SuccessEmailPattern))\r
- SendEmail(Parameters.TargetConfig.SuccessEmailRecipient, Parameters.TargetConfig.SuccessEmailPattern);\r
+ SendEmail(Parameters.TargetConfig.SuccessEmailRecipient, Parameters.TargetConfig.SuccessEmailSubject, Parameters.TargetConfig.SuccessEmailPattern);\r
logger.Trace(Strings.EXIT);\r
}\r
\r
logger.Trace(Strings.EXIT);\r
}\r
\r
- private void SendEmail(string to, string messagePattern) {\r
+ private void SendEmail(string to, string subjectPattern, string messagePattern) {\r
logger.Trace(Strings.ENTRY);\r
try {\r
string message = GetDynamicText(messagePattern);\r
- Parameters.MediaCubeApi.Notify(to, message);\r
+ string subject = GetDynamicText(subjectPattern);\r
+ Parameters.MediaCubeApi.Notify(to, subject, message);\r
} catch (Exception e) {\r
MessageBox.Show(parent, e.Message);\r
}\r
return result;\r
}\r
\r
- public void Notify(string to, string content) {\r
+ public void Notify(string to, string subject, string content) {\r
var request = new RestRequest("notify", Method.GET);\r
//Debug.WriteLine(body);\r
request.AddQueryParameter("to", to);\r
+ request.AddQueryParameter("subject", subject);\r
request.AddQueryParameter("content", content);\r
var response = client.Execute(request);\r
if (response.StatusCode != HttpStatusCode.OK || response.ContentLength < 1)\r
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>\r
-<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">\r
-<booleanAttribute key="M2_DEBUG_OUTPUT" value="false"/>\r
-<stringAttribute key="M2_GOALS" value="clean deploy -Dremote.address=scp://root:password@10.10.1.29 -Dremote.location=/opt/test-mediacube"/>\r
-<booleanAttribute key="M2_NON_RECURSIVE" value="false"/>\r
-<booleanAttribute key="M2_OFFLINE" value="false"/>\r
-<stringAttribute key="M2_PROFILES" value=""/>\r
-<listAttribute key="M2_PROPERTIES"/>\r
-<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>\r
-<booleanAttribute key="M2_SKIP_TESTS" value="false"/>\r
-<intAttribute key="M2_THREADS" value="1"/>\r
-<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false"/>\r
-<stringAttribute key="M2_USER_SETTINGS" value=""/>\r
-<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false"/>\r
-<listAttribute key="org.eclipse.debug.ui.favoriteGroups">\r
-<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>\r
-</listAttribute>\r
-<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc}/-modules"/>\r
-</launchConfiguration>\r