aboutsummaryrefslogtreecommitdiff
path: root/OpenSubtitlesHandler
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSubtitlesHandler')
-rw-r--r--OpenSubtitlesHandler/Utilities.cs4
-rw-r--r--OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs64
2 files changed, 33 insertions, 35 deletions
diff --git a/OpenSubtitlesHandler/Utilities.cs b/OpenSubtitlesHandler/Utilities.cs
index 2ae116521..d26c76b7c 100644
--- a/OpenSubtitlesHandler/Utilities.cs
+++ b/OpenSubtitlesHandler/Utilities.cs
@@ -32,7 +32,7 @@ namespace OpenSubtitlesHandler
/// </summary>
public sealed class Utilities
{
- private const string XML_RPC_SERVER = "http://api.opensubtitles.org/xml-rpc";
+ private const string XML_RPC_SERVER = "https://api.opensubtitles.org/xml-rpc";
/// <summary>
/// Compute movie hash
@@ -195,7 +195,7 @@ namespace OpenSubtitlesHandler
RequestContentBytes = request,
RequestContentType = "text/xml",
UserAgent = userAgent,
- Host = "api.opensubtitles.org:80",
+ Host = "api.opensubtitles.org:443",
Url = XML_RPC_SERVER,
// Response parsing will fail with this enabled
diff --git a/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs b/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs
index 5a190ab72..c39917e29 100644
--- a/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs
+++ b/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs
@@ -51,47 +51,45 @@ namespace XmlRpcHandler
XmlWriterSettings sett = new XmlWriterSettings();
sett.Indent = true;
- var requestXmlPath = Path.Combine(Path.GetTempPath(), "request.xml");
-
sett.Encoding = Encoding.UTF8;
- FileStream str = new FileStream(requestXmlPath, FileMode.Create, FileAccess.Write);
- XmlWriter XMLwrt = XmlWriter.Create(str, sett);
- // Let's write the methods
- foreach (XmlRpcMethodCall method in methods)
+ using (var ms = new MemoryStream())
{
- XMLwrt.WriteStartElement("methodCall");//methodCall
- XMLwrt.WriteStartElement("methodName");//methodName
- XMLwrt.WriteString(method.Name);
- XMLwrt.WriteEndElement();//methodName
- XMLwrt.WriteStartElement("params");//params
- // Write values
- foreach (IXmlRpcValue p in method.Parameters)
+ XmlWriter XMLwrt = XmlWriter.Create(ms, sett);
+ // Let's write the methods
+ foreach (XmlRpcMethodCall method in methods)
{
- XMLwrt.WriteStartElement("param");//param
- if (p is XmlRpcValueBasic)
- {
- WriteBasicValue(XMLwrt, (XmlRpcValueBasic)p);
- }
- else if (p is XmlRpcValueStruct)
+ XMLwrt.WriteStartElement("methodCall");//methodCall
+ XMLwrt.WriteStartElement("methodName");//methodName
+ XMLwrt.WriteString(method.Name);
+ XMLwrt.WriteEndElement();//methodName
+ XMLwrt.WriteStartElement("params");//params
+ // Write values
+ foreach (IXmlRpcValue p in method.Parameters)
{
- WriteStructValue(XMLwrt, (XmlRpcValueStruct)p);
- }
- else if (p is XmlRpcValueArray)
- {
- WriteArrayValue(XMLwrt, (XmlRpcValueArray)p);
+ XMLwrt.WriteStartElement("param");//param
+ if (p is XmlRpcValueBasic)
+ {
+ WriteBasicValue(XMLwrt, (XmlRpcValueBasic)p);
+ }
+ else if (p is XmlRpcValueStruct)
+ {
+ WriteStructValue(XMLwrt, (XmlRpcValueStruct)p);
+ }
+ else if (p is XmlRpcValueArray)
+ {
+ WriteArrayValue(XMLwrt, (XmlRpcValueArray)p);
+ }
+ XMLwrt.WriteEndElement();//param
}
- XMLwrt.WriteEndElement();//param
- }
- XMLwrt.WriteEndElement();//params
- XMLwrt.WriteEndElement();//methodCall
+ XMLwrt.WriteEndElement();//params
+ XMLwrt.WriteEndElement();//methodCall
+ }
+ XMLwrt.Flush();
+ XMLwrt.Close();
+ return ms.ToArray();
}
- XMLwrt.Flush();
- XMLwrt.Close();
- str.Close();
- string requestContent = File.ReadAllText(requestXmlPath);
- return Encoding.UTF8.GetBytes(requestContent);
}
/// <summary>
/// Decode response then return the values