public static Exception NoCSRF() { return(new Exception(RS.get(ResourceKey.ERRORS_NoCSRF))); }
private void button1_Click(object sender, EventArgs e) { double R1, R2, R3, R4, R5, RS, RP; try { R1 = Convert.ToDouble(textBox1.Text); } catch { R1 = 0; } try { R2 = Convert.ToDouble(textBox2.Text); } catch { R2 = 0; } try { R3 = Convert.ToDouble(textBox3.Text); } catch { R3 = 0; } try { R4 = Convert.ToDouble(textBox4.Text); } catch { R4 = 0; } try { R5 = Convert.ToDouble(textBox5.Text); } catch { R5 = 0; } RS = R1 + R2 + R3 + R4 + R5; if (R1 == 0) { R1 = double.PositiveInfinity; } if (R2 == 0) { R2 = double.PositiveInfinity; } if (R3 == 0) { R3 = double.PositiveInfinity; } if (R4 == 0) { R4 = double.PositiveInfinity; } if (R5 == 0) { R5 = double.PositiveInfinity; } RP = 1 / (1 / R1 + 1 / R2 + 1 / R3 + 1 / R4 + 1 / R5); label6.Text = " Answer Series " + RS.ToString("0.00"); label7.Text = " Answer Parallel " + RP.ToString("0.00"); }
protected override async Task <HttpResponseMessage> CreateItemPutResponse(FileSystemInfoBase info, string localFilePath, bool itemExists) { // If repository is empty then there is no commit id and no master branch so we don't create any branch; we just init the repo. if (_currentEtag != null) { HttpResponseMessage errorResponse; if (!PrepareBranch(itemExists, out errorResponse)) { return(errorResponse); } } else { // Initialize or re-initialize repository _repository.Initialize(); } // Save file try { // Get the query parameters QueryParameters parameters = new QueryParameters(this.Request); using (Stream fileStream = GetFileWriteStream(localFilePath, fileExists: itemExists)) { try { await Request.Content.CopyToAsync(fileStream); } catch (Exception ex) { Tracer.TraceError(ex); HttpResponseMessage conflictResponse = Request.CreateErrorResponse( HttpStatusCode.Conflict, RS.Format(Resources.VfsController_WriteConflict, localFilePath, ex.Message), ex); return(conflictResponse); } } // Use to track whether our rebase applied updates from master. bool updateBranchIsUpToDate = true; // Commit to local branch bool commitResult = _repository.Commit(parameters.Message, authorName: null); if (!commitResult) { HttpResponseMessage noChangeResponse = Request.CreateResponse(HttpStatusCode.NoContent); noChangeResponse.Headers.ETag = CreateEtag(_repository.CurrentId); return(noChangeResponse); } bool rebasing = false; if (_currentEtag != null) { try { // Only rebase if VFS branch isn't up-to-date already if (!_repository.DoesBranchContainCommit(VfsUpdateBranch, MasterBranch)) { // Rebase to get updates from master while checking whether we get a conflict rebasing = true; updateBranchIsUpToDate = _repository.Rebase(MasterBranch); } // Switch content back to master _repository.UpdateRef(VfsUpdateBranch); } catch (CommandLineException commandLineException) { Tracer.TraceError(commandLineException); if (rebasing) { // The rebase resulted in a conflict. We send the conflicted version to the client so that the user // can see the conflicts and resubmit. _cleanupRebaseConflict = true; HttpResponseMessage conflictResponse = Request.CreateResponse(HttpStatusCode.Conflict); _readStream = new RepositoryItemStream(this, GetFileReadStream(localFilePath)); conflictResponse.Content = new StreamContent(_readStream, BufferSize); conflictResponse.Content.Headers.ContentType = _conflictMediaType; return(conflictResponse); } else { HttpResponseMessage updateErrorResponse = Request.CreateErrorResponse(HttpStatusCode.InternalServerError, RS.Format(Resources.VfsScmUpdate_Error, commandLineException.Message)); return(updateErrorResponse); } } } // If item does not already exist then we return 201 Created. Otherwise, as a successful commit could result // in a non-conflicting merge we send back the committed version so that a client // can get the latest bits. This means we use a 200 OK response instead of a 204 response. HttpResponseMessage successFileResponse = null; if (itemExists) { if (updateBranchIsUpToDate) { successFileResponse = Request.CreateResponse(HttpStatusCode.NoContent); } else { successFileResponse = Request.CreateResponse(HttpStatusCode.OK); _readStream = new RepositoryItemStream(this, GetFileReadStream(localFilePath)); successFileResponse.Content = new StreamContent(_readStream, BufferSize); successFileResponse.Content.Headers.ContentType = MediaTypeMap.GetMediaType(info.Extension); } } else { successFileResponse = Request.CreateResponse(HttpStatusCode.Created); } // Get current commit ID string currentId = _repository.CurrentId; // Deploy changes unless request indicated to not deploy if (!parameters.NoDeploy) { DeployResult result = await DeployChangesAsync(currentId); if (result != null && result.Status != DeployStatus.Success) { HttpResponseMessage deploymentErrorResponse = Request.CreateErrorResponse(HttpStatusCode.InternalServerError, RS.Format(Resources.VfsScmController_DeploymentError, result.StatusText)); return(deploymentErrorResponse); } } // Set updated etag for the file successFileResponse.Headers.ETag = CreateEtag(currentId); return(successFileResponse); } catch (Exception ex) { Tracer.TraceError(ex); HttpResponseMessage errorResponse = Request.CreateErrorResponse(HttpStatusCode.Conflict, RS.Format(Resources.VfsController_WriteConflict, localFilePath, ex.Message), ex); return(errorResponse); } }
private void Search_Click(object sender, EventArgs e) { string a; RS.Refresh(); if (RS.SelectedValue.ToString() == "Paid") { a = "1)"; } else if (RS.SelectedValue.ToString() == "Not-Paid") { a = "0)"; } else { a = "0 OR Rent_Statues = 1)"; } string b; b = " AND Rent_Amount >" + RAN.Value.ToString(); a += b; if (Collecter.SelectedValue != null) { b = " AND Rent_CollecterId = " + Collecter.SelectedValue.ToString(); a += b; } if (DueS.Value != null) { b = " And Rent_DueDate <= '" + DueS.Value.ToString("yyyy-MM-dd") + "'"; a += b; } if (DDA.Value != null) { b = " And Rent_DueDate >= '" + DDA.Value.ToString("yyyy-MM-dd") + "'"; a += b; } if (Units.SelectedValue != null) { b = " And Unit_Rents_UnitId = " + Units.SelectedValue.ToString(); a += b; } if (tenants.SelectedValue != null) { b = " And Unit_Rents_TenantId = " + tenants.SelectedValue.ToString(); a += b; } if (BCC.SelectedValue != null) { b = " And Unit_BuildingNo = " + BCC.SelectedValue.ToString(); a += b; } DataTable dt1 = contobj.GetRentsByStat(a); dataGridView1.DataSource = dt1; if (dt1 != null) { dataGridView1.Columns[4].Visible = false; dataGridView1.Columns[5].Visible = false; dataGridView1.Columns[6].Visible = false; dataGridView1.Columns[7].Visible = false; dataGridView1.Columns[8].Visible = false; dataGridView1.Columns[9].Visible = false; dataGridView1.Columns[10].Visible = false; dataGridView1.Columns[11].Visible = false; dataGridView1.Columns[12].Visible = false; dataGridView1.Columns[13].Visible = false; dataGridView1.Columns[14].Visible = false; dataGridView1.Columns[15].Visible = false; dataGridView1.Columns[16].Visible = false; dataGridView1.Columns[17].Visible = false; dataGridView1.Columns[0].HeaderText = "Id"; dataGridView1.Columns[1].HeaderText = "Amount"; dataGridView1.Columns[2].HeaderText = "Due Date"; dataGridView1.Columns[3].HeaderText = "Payment Statues"; /* dataGridView1.Columns[4].HeaderText = "Collecter Id"; * dataGridView1.Columns[5].HeaderText = "Lease Id"; * dataGridView1.Columns[6].HeaderText = "Tenant"; * dataGridView1.Columns[7].HeaderText = "Unit"; * dataGridView1.Columns[17].HeaderText = "Building ID";*/ } dataGridView1.Refresh(); if (sender == Search) { MessageBox.Show("Search Done!!"); } }
private void Show(byte[] bytes) { RS.Write(true); Write(bytes); }
private static string ValidateArguments(HttpContent content, long maxMessageSize, bool throwOnError) { Contract.Assert(content != null, "content cannot be null."); if (maxMessageSize < MimeMultipartParser.MinMessageSize) { if (throwOnError) { throw new ArgumentOutOfRangeException("maxMessageSize", maxMessageSize, RS.Format(Properties.Resources.ArgumentMustBeGreaterThanOrEqualTo, MimeMultipartParser.MinMessageSize)); } else { return(null); } } MediaTypeHeaderValue contentType = content.Headers.ContentType; if (contentType == null) { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.ReadAsMimeMultipartArgumentNoContentType, typeof(HttpContent).Name, "multipart/"), "content"); } else { return(null); } } if (!contentType.MediaType.StartsWith("multipart", StringComparison.OrdinalIgnoreCase)) { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.ReadAsMimeMultipartArgumentNoMultipart, typeof(HttpContent).Name, "multipart/"), "content"); } else { return(null); } } string boundary = null; foreach (NameValueHeaderValue p in contentType.Parameters) { if (p.Name.Equals("boundary", StringComparison.OrdinalIgnoreCase)) { boundary = FormattingUtilities.UnquoteToken(p.Value); break; } } if (boundary == null) { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.ReadAsMimeMultipartArgumentNoBoundary, typeof(HttpContent).Name, "multipart", "boundary"), "content"); } else { return(null); } } return(boundary); }
/// <summary> /// Initializes a new instance of the <see cref="HttpStatusLineParser"/> class. /// </summary> /// <param name="httpResponse"><see cref="HttpUnsortedResponse"/> instance where the response line properties will be set as they are parsed.</param> /// <param name="maxStatusLineSize">Maximum length of HTTP header.</param> public HttpStatusLineParser(HttpUnsortedResponse httpResponse, int maxStatusLineSize) { // The minimum length which would be an empty header terminated by CRLF if (maxStatusLineSize < MinStatusLineSize) { throw new ArgumentOutOfRangeException("maxStatusLineSize", maxStatusLineSize, RS.Format(Properties.Resources.ArgumentMustBeGreaterThanOrEqualTo, MinStatusLineSize)); } if (httpResponse == null) { throw new ArgumentNullException("httpResponse"); } _httpResponse = httpResponse; _maximumHeaderLength = maxStatusLineSize; }
/// <summary> /// Attempts to get an expression for an index parameter. /// </summary> /// <param name="indexes">The operation indexes parameter.</param> /// <param name="expression">A <see cref="Expression"/> to be initialized to the index expression if the operation is successful, otherwise an error expression.</param> /// <returns>true the operation is successful, false otherwise.</returns> private static bool TryGetIndexExpression(DynamicMetaObject[] indexes, out Expression expression) { if (indexes.Length == 1 && indexes[0] != null && indexes[0].Value != null) { DynamicMetaObject index = indexes[0]; Type indexType = indexes[0].Value.GetType(); switch (Type.GetTypeCode(indexType)) { case TypeCode.Char: case TypeCode.Int16: case TypeCode.UInt16: case TypeCode.Byte: case TypeCode.SByte: Expression argExp = Expression.Convert(index.Expression, typeof(object)); Expression typeExp = Expression.Constant(typeof(int)); expression = Expression.Convert(Expression.Call(_changeTypeMethodInfo, new Expression[] { argExp, typeExp }), typeof(int)); return(true); case TypeCode.Int32: case TypeCode.String: expression = index.Expression; return(true); } expression = Expression.Throw(Expression.Constant(new ArgumentException(RS.Format(Properties.Resources.InvalidIndexType, indexType))), typeof(object)); return(false); } expression = Expression.Throw(Expression.Constant(new ArgumentException(Properties.Resources.NonSingleNonNullIndexNotSupported)), typeof(object)); return(false); }
/// <summary> /// 记录到文件 /// </summary> /// <param name="message"></param> private static void RecordLog(string type, string message, string page = null) { var isNeedRecordLog = System.Configuration.ConfigurationManager.AppSettings[RS.get(ResourceKey.SETTINGS_RecordOAuthLog)]; var need = true; if (isNeedRecordLog != null) { bool.TryParse(isNeedRecordLog, out need); } if (need) { StringBuilder sb = new StringBuilder(); sb.AppendLine("====== Log Start ======"); sb.AppendLine("Time: " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.ffff")); sb.AppendLine("Type: " + type); if (page != null) { sb.AppendLine("Page: " + page); } sb.AppendLine("Message: " + message); sb.AppendLine("====== Log End ======"); sb.AppendLine(); File.AppendAllText(HttpContext.Current.Server.MapPath("~/OAuthLogin.log"), sb.ToString()); } }
public static Task <HttpRequestMessage> ReadAsHttpRequestMessageAsync(this HttpContent content, string uriScheme, int bufferSize) { if (content == null) { throw new ArgumentNullException("content"); } if (uriScheme == null) { throw new ArgumentNullException("uriScheme"); } if (!Uri.CheckSchemeName(uriScheme)) { throw new ArgumentException(RS.Format(Properties.Resources.HttpMessageParserInvalidUriScheme, uriScheme, typeof(Uri).Name), "uriScheme"); } if (bufferSize < MinBufferSize) { throw new ArgumentOutOfRangeException("bufferSize", bufferSize, RS.Format(Properties.Resources.ArgumentMustBeGreaterThanOrEqualTo, MinBufferSize)); } HttpMessageContent.ValidateHttpMessageContent(content, true, true); return(content.ReadAsStreamAsync().Then(stream => { HttpUnsortedRequest httpRequest = new HttpUnsortedRequest(); HttpRequestHeaderParser parser = new HttpRequestHeaderParser(httpRequest); ParserState parseStatus; byte[] buffer = new byte[bufferSize]; int bytesRead = 0; int headerConsumed = 0; while (true) { try { bytesRead = stream.Read(buffer, 0, buffer.Length); } catch (Exception e) { throw new IOException(Properties.Resources.HttpMessageErrorReading, e); } try { parseStatus = parser.ParseBuffer(buffer, bytesRead, ref headerConsumed); } catch (Exception) { parseStatus = ParserState.Invalid; } if (parseStatus == ParserState.Done) { return CreateHttpRequestMessage(uriScheme, httpRequest, stream, bytesRead - headerConsumed); } else if (parseStatus != ParserState.NeedMoreData) { throw new IOException(RS.Format(Properties.Resources.HttpMessageParserError, headerConsumed, buffer)); } } })); }
/// <summary> /// <see cref="HttpContent"/> implementation which provides a byte range view over a stream used to generate HTTP /// 206 (Partial Content) byte range responses. If none of the requested ranges overlap with the current extend /// of the selected resource represented by the <paramref name="content"/> parameter then an /// <see cref="InvalidByteRangeException"/> is thrown indicating the valid Content-Range of the content. /// </summary> /// <param name="content">The stream over which to generate a byte range view.</param> /// <param name="range">The range or ranges, typically obtained from the Range HTTP request header field.</param> /// <param name="mediaType">The media type of the content stream.</param> /// <param name="bufferSize">The buffer size used when copying the content stream.</param> public ByteRangeStreamContent(Stream content, RangeHeaderValue range, MediaTypeHeaderValue mediaType, int bufferSize) { if (content == null) { throw new ArgumentNullException("content"); } if (!content.CanSeek) { throw new ArgumentException("content", RS.Format(Resources.ByteRangeStreamNotSeekable, typeof(ByteRangeStreamContent).Name)); } if (range == null) { throw new ArgumentNullException("range"); } if (mediaType == null) { throw new ArgumentNullException("mediaType"); } if (bufferSize < MinBufferSize) { throw new ArgumentOutOfRangeException("bufferSize", bufferSize, RS.Format(Resources.ArgumentMustBeGreaterThanOrEqualTo, MinBufferSize)); } if (!range.Unit.Equals(SupportedRangeUnit, StringComparison.OrdinalIgnoreCase)) { throw new ArgumentException(RS.Format(Resources.ByteRangeStreamContentNotBytesRange, range.Unit, SupportedRangeUnit), "range"); } try { // If we have more than one range then we use a multipart/byteranges content type as wrapper. // Otherwise we use a non-multipart response. if (range.Ranges.Count > 1) { // Create Multipart content and copy headers to this content MultipartContent rangeContent = new MultipartContent(ByteRangesContentSubtype); _byteRangeContent = rangeContent; foreach (RangeItemHeaderValue rangeValue in range.Ranges) { try { ByteRangeStream rangeStream = new ByteRangeStream(content, rangeValue); HttpContent rangeBodyPart = new StreamContent(rangeStream, bufferSize); rangeBodyPart.Headers.ContentType = mediaType; rangeBodyPart.Headers.ContentRange = rangeStream.ContentRange; rangeContent.Add(rangeBodyPart); } catch (ArgumentOutOfRangeException) { // We ignore range errors until we check that we have at least one valid range } } // If no overlapping ranges were found then stop if (!rangeContent.Any()) { ContentRangeHeaderValue actualContentRange = new ContentRangeHeaderValue(content.Length); string msg = RS.Format(Resources.ByteRangeStreamNoneOverlap, range.ToString()); throw new InvalidByteRangeException(actualContentRange, msg); } } else if (range.Ranges.Count == 1) { try { ByteRangeStream rangeStream = new ByteRangeStream(content, range.Ranges.First()); _byteRangeContent = new StreamContent(rangeStream, bufferSize); _byteRangeContent.Headers.ContentType = mediaType; _byteRangeContent.Headers.ContentRange = rangeStream.ContentRange; } catch (ArgumentOutOfRangeException) { ContentRangeHeaderValue actualContentRange = new ContentRangeHeaderValue(content.Length); string msg = RS.Format(Resources.ByteRangeStreamNoOverlap, range.ToString()); throw new InvalidByteRangeException(actualContentRange, msg); } } else { throw new ArgumentException(Resources.ByteRangeStreamContentNoRanges, "range"); } // Copy headers from byte range content so that we get the right content type etc. foreach (KeyValuePair <string, IEnumerable <string> > header in _byteRangeContent.Headers) { Headers.TryAddWithoutValidation(header.Key, header.Value); } _content = content; _start = content.Position; } catch { if (_byteRangeContent != null) { _byteRangeContent.Dispose(); } throw; } }
public virtual string TransformText() { this.GenerationEnvironment = null; #line 1 "" this.Write(""); #line default #line hidden #line 6 "" this.Write("#include \""); #line default #line hidden #line 6 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.SimulatorFileName(Network))); #line default #line hidden #line 6 "" this.Write(".hpp\"\n\n// The names of all signals\nstd::string "); #line default #line hidden #line 9 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 9 "" this.Write("_SIGNAL_NAMES[] = {\n"); #line default #line hidden #line 10 "" foreach (var signal in RS.DriverSignals.Concat(RS.VerifySignals)) { var cpptype = RS.TypeScope.GetType(signal); if (cpptype.IsArray) { var eltype = cpptype.ElementName; var length = (int)RS.GetArrayLength(signal).DefaultValue; for (var i = 0; i < length; i++) { #line default #line hidden #line 17 "" this.Write(" \""); #line default #line hidden #line 17 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.TestBenchSignalName(signal))); #line default #line hidden #line 17 "" this.Write("("); #line default #line hidden #line 17 "" this.Write(this.ToStringHelper.ToStringWithCulture(i)); #line default #line hidden #line 17 "" this.Write(")\",\n"); #line default #line hidden #line 18 "" } #line default #line hidden #line 19 "" } else { #line default #line hidden #line 20 "" this.Write(" \""); #line default #line hidden #line 20 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.TestBenchSignalName(signal))); #line default #line hidden #line 20 "" this.Write("\",\n"); #line default #line hidden #line 21 "" } #line default #line hidden #line 22 "" } #line default #line hidden #line 23 "" this.Write("};\n\n"); #line default #line hidden #line 25 "" foreach (var process in Network.Processes) { var members = process .SharedVariables.Cast <AST.DataElement>() .Union(process.SharedSignals) //.Where(x => RS.TypeScope.GetType(x).IsArray) .Where(x => (x.DefaultValue is SME.AST.ArrayCreateExpression) || (x.DefaultValue is Array)); foreach (var v in members) { var rt = RS.TypeScope.GetType(v); var eltype = rt.ElementName; var arraylen = RS.GetArrayLength(v).DefaultValue; #line default #line hidden #line 36 "" this.Write("const "); #line default #line hidden #line 36 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 36 "" this.Write(" init_"); #line default #line hidden #line 36 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ProcessNameToValidName(process))); #line default #line hidden #line 36 "" this.Write("_"); #line default #line hidden #line 36 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(v.Name))); #line default #line hidden #line 36 "" this.Write("["); #line default #line hidden #line 36 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylen)); #line default #line hidden #line 36 "" this.Write("] = "); #line default #line hidden #line 36 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.Renderer.GetInitializer(v))); #line default #line hidden #line 36 "" this.Write(";\n"); #line default #line hidden #line 37 "" } #line default #line hidden #line 38 "" } #line default #line hidden #line 39 "" this.Write("\n\n"); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 41 "" this.Write("::"); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 41 "" this.Write("() \n :\n"); #line default #line hidden #line 43 "" foreach (var bus in Network.Busses) { #line default #line hidden #line 44 "" this.Write(" bus_"); #line default #line hidden #line 44 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(bus))); #line default #line hidden #line 44 "" this.Write("(),\n"); #line default #line hidden #line 45 "" } #line default #line hidden #line 46 "" foreach (var process in Network.Processes) { var busses = process.InputBusses.Concat(process.OutputBusses).Concat(process.InternalBusses).Distinct().OrderBy(x => x.Name).ToArray(); var members = process.SharedVariables.Cast <AST.DataElement>().Union(process.SharedSignals).ToArray(); #line default #line hidden #line 51 "" this.Write(" proc_"); #line default #line hidden #line 51 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ProcessNameToValidName(process))); #line default #line hidden #line 51 "" this.Write("(\n"); #line default #line hidden #line 52 "" foreach (var bus in busses) { #line default #line hidden #line 53 "" this.Write(" &bus_"); #line default #line hidden #line 53 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(bus))); #line default #line hidden #line 53 "" this.Write(this.ToStringHelper.ToStringWithCulture((bus == busses.Last() & members.Length == 0) ? "" : ", ")); #line default #line hidden #line 53 "" this.Write("\n"); #line default #line hidden #line 54 "" } #line default #line hidden #line 55 "" foreach (var v in members) { var initializer = RS.Renderer.GetInitializer(v); if (!string.IsNullOrWhiteSpace(initializer)) { var rt = RS.TypeScope.GetType(v); if (rt.IsArray) { var eltype = rt.ElementName; var arraylen = RS.GetArrayLength(v).DefaultValue; #line default #line hidden #line 64 "" this.Write(" "); #line default #line hidden #line 64 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylen)); #line default #line hidden #line 64 "" this.Write(",\n"); #line default #line hidden #line 65 "" if ((v.DefaultValue is SME.AST.ArrayCreateExpression) || v.DefaultValue is Array) { #line default #line hidden #line 68 "" this.Write(" init_"); #line default #line hidden #line 68 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ProcessNameToValidName(process))); #line default #line hidden #line 68 "" this.Write("_"); #line default #line hidden #line 68 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(v.Name))); #line default #line hidden #line 68 "" this.Write(this.ToStringHelper.ToStringWithCulture(v == members.Last() ? "" : ",")); #line default #line hidden #line 68 "" this.Write("\n"); #line default #line hidden #line 69 "" } else { #line default #line hidden #line 70 "" this.Write(" new "); #line default #line hidden #line 70 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 70 "" this.Write("["); #line default #line hidden #line 70 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylen)); #line default #line hidden #line 70 "" this.Write("]()"); #line default #line hidden #line 70 "" this.Write(this.ToStringHelper.ToStringWithCulture(v == members.Last() ? "" : ",")); #line default #line hidden #line 70 "" this.Write("\n"); #line default #line hidden #line 71 "" } #line default #line hidden #line 72 "" } else { #line default #line hidden #line 73 "" this.Write(" "); #line default #line hidden #line 73 "" this.Write(this.ToStringHelper.ToStringWithCulture(initializer)); #line default #line hidden #line 73 "" this.Write(this.ToStringHelper.ToStringWithCulture(v == members.Last() ? "" : ",")); #line default #line hidden #line 73 "" this.Write("\n"); #line default #line hidden #line 74 "" } #line default #line hidden #line 75 "" } #line default #line hidden #line 76 "" } #line default #line hidden #line 77 "" this.Write(" ),\n"); #line default #line hidden #line 78 "" } #line default #line hidden #line 79 "" this.Write(" trace_input(NULL),\n input_line(),\n cycle(0)\n{\n\n}\n\nsize_t "); #line default #line hidden #line 86 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 86 "" this.Write(@"::RunSimulation(const char* inputfile) { LoadTraceInput(inputfile); // Ignore the reset cycle DriveFromTraceInput(); while(true) { if (!DriveFromTraceInput()) { size_t res = cycle; Stop(); return res; } OnTick(); VerifyTrace(); FinishCycle(); } } void "); #line default #line hidden #line 105 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 105 "" this.Write(@"::LoadTraceInput(const char* inputfile) { if (trace_input != NULL) throw MessageException(""Already have an input trace file open""); // Open the trace file and validate the headers trace_input = new std::ifstream(inputfile); if (trace_input->bad()) { trace_input->close(); throw MessageException(""Trace input file not found, or not able to open""); } if (!std::getline(*trace_input, input_line)) { throw MessageException(""Trace input file was empty""); } if (cycle != 0) { throw MessageException(""Cannot load input file after the simulation has started""); } std::string token; std::istringstream headerlinestream(input_line); size_t field = 0; while(std::getline(headerlinestream, token, ',')) { if (token.compare("); #line default #line hidden #line 129 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 129 "" this.Write("_SIGNAL_NAMES[field]) != 0) {\n\n std::stringstream sstm;\n ss" + "tm << \"Field #\" << field << \" should be named \" << "); #line default #line hidden #line 132 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 132 "" this.Write("_SIGNAL_NAMES[field] << \" but is named \" << token << \", the trace file cannot be " + "used\";\n throw MessageException(sstm.str());\n }\n field++" + ";\n }\n\n cycle = 0;\n}\n\n"); #line default #line hidden #line 141 "" var driver_signal_count = 0; #line default #line hidden #line 142 "" this.Write("\nbool "); #line default #line hidden #line 143 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 143 "" this.Write(@"::DriveFromTraceInput() { if (trace_input == NULL) { throw MessageException(""Trace input file is not loaded""); } if (!std::getline(*trace_input, input_line)) { return false; } size_t i; std::string token; std::istringstream valuestream(input_line); size_t field = 0; "); #line default #line hidden #line 158 "" foreach (var signal in RS.DriverSignals) { var cpptype = RS.TypeScope.GetType(signal); if (cpptype.IsArray) { var eltype = cpptype.ElementName; var length = (int)RS.GetArrayLength(signal).DefaultValue; driver_signal_count += length; #line default #line hidden #line 165 "" this.Write(" for (i = 0; i < "); #line default #line hidden #line 165 "" this.Write(this.ToStringHelper.ToStringWithCulture(length)); #line default #line hidden #line 165 "" this.Write("; i++) {\n if (!std::getline(valuestream, token, \',\')) {\n std::s" + "tringstream sstm;\n sstm << \"Unexpected end-of-line in cycle \" << cycl" + "e << \", field \" << field << \", "); #line default #line hidden #line 168 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 168 "" this.Write("[\" << i << \"]\" << std::endl;\n throw MessageException(sstm.str());\n " + " }\n if (token.compare(\"U\") != 0)\n bus_"); #line default #line hidden #line 172 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 172 "" this.Write("."); #line default #line hidden #line 172 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 172 "" this.Write("(i, parse_"); #line default #line hidden #line 172 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 172 "" this.Write("(token)); \n field++;\n }\n"); #line default #line hidden #line 175 "" } else { driver_signal_count++; #line default #line hidden #line 179 "" this.Write(" if (!std::getline(valuestream, token, \',\')) {\n std::stringstream sstm;" + "\n sstm << \"Unexpected end-of-line in cycle \" << cycle << \", field \" << fi" + "eld << \", "); #line default #line hidden #line 181 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 181 "" this.Write("[\" << i << \"]\" << std::endl;\n throw MessageException(sstm.str());\n }\n " + " if (token.compare(\"U\") != 0)\n bus_"); #line default #line hidden #line 185 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 185 "" this.Write("."); #line default #line hidden #line 185 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 185 "" this.Write("(parse_"); #line default #line hidden #line 185 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.TypeScope.GetType(signal).Name)); #line default #line hidden #line 185 "" this.Write("(token));\n field++;\n"); #line default #line hidden #line 187 "" } #line default #line hidden #line 188 "" this.Write("\n"); #line default #line hidden #line 189 "" } #line default #line hidden #line 190 "" this.Write("\n return true;\n}\n\nvoid "); #line default #line hidden #line 194 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 194 "" this.Write("::FinishCycle() \n{\n cycle++;\n"); #line default #line hidden #line 197 "" if (Network.Busses.Any(x => x.IsClocked)) { #line default #line hidden #line 198 "" this.Write(" // Propagate clocked busses\n"); #line default #line hidden #line 199 "" foreach (var bus in Network.Busses.Where(x => x.IsClocked)) { #line default #line hidden #line 200 "" this.Write(" bus_"); #line default #line hidden #line 200 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 200 "" this.Write(".Propagate();\n"); #line default #line hidden #line 201 "" } #line default #line hidden #line 202 "" } #line default #line hidden #line 203 "" this.Write("}\n\nvoid "); #line default #line hidden #line 205 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 205 "" this.Write("::OnTick()\n{\n\n"); #line default #line hidden #line 208 "" foreach (var p in Network.Processes.Where(x => x.IsClocked).Distinct()) { #line default #line hidden #line 209 "" this.Write(" proc_"); #line default #line hidden #line 209 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ProcessNameToValidName(p))); #line default #line hidden #line 209 "" this.Write(".onTick();\n"); #line default #line hidden #line 210 "" } #line default #line hidden #line 211 "" foreach (var b in Network.Busses.Where(x => x.IsClocked).Distinct()) { #line default #line hidden #line 212 "" this.Write(" bus_"); #line default #line hidden #line 212 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(b))); #line default #line hidden #line 212 "" this.Write(".propagate_signals();\n"); #line default #line hidden #line 213 "" } #line default #line hidden #line 214 "" this.Write("\n\n"); #line default #line hidden #line 216 "" foreach (var n in Graph.ExecutionPlan) { var pn = GetProcess(n.Item); if (pn != null && !pn.IsClocked) { #line default #line hidden #line 220 "" this.Write(" proc_"); #line default #line hidden #line 220 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ProcessNameToValidName(pn))); #line default #line hidden #line 220 "" this.Write(".onTick();\n"); #line default #line hidden #line 221 "" } #line default #line hidden #line 222 "" foreach (var b in n.Item.OutputBusses.Distinct()) { #line default #line hidden #line 223 "" this.Write(" bus_"); #line default #line hidden #line 223 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(GetBus(b)))); #line default #line hidden #line 223 "" this.Write(".forward_signals();\n"); #line default #line hidden #line 224 "" } #line default #line hidden #line 225 "" foreach (var b in n.PropagateAfter) { #line default #line hidden #line 226 "" this.Write(" bus_"); #line default #line hidden #line 226 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(GetBus(b)))); #line default #line hidden #line 226 "" this.Write(".propagate_signals();\n"); #line default #line hidden #line 227 "" } #line default #line hidden #line 228 "" foreach (var b in n.Item.InternalBusses) { #line default #line hidden #line 229 "" this.Write(" bus_"); #line default #line hidden #line 229 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(GetBus(b)))); #line default #line hidden #line 229 "" this.Write(".forward_signals();\n bus_"); #line default #line hidden #line 230 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(GetBus(b)))); #line default #line hidden #line 230 "" this.Write(".propagate_signals();\n"); #line default #line hidden #line 231 "" } #line default #line hidden #line 232 "" } #line default #line hidden #line 233 "" this.Write("}\n\nvoid "); #line default #line hidden #line 235 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 235 "" this.Write("::VerifyTrace()\n{\n if (trace_input == NULL) {\n throw MessageException(\"" + "Trace input file is not loaded\");\n }\n\n size_t i;\n size_t field = 0;\n " + " std::string token;\n std::istringstream valuestream(input_line);\n\n // Forw" + "ard past the "); #line default #line hidden #line 246 "" this.Write(this.ToStringHelper.ToStringWithCulture(driver_signal_count)); #line default #line hidden #line 246 "" this.Write(" signals\n for(i = 0; i < "); #line default #line hidden #line 247 "" this.Write(this.ToStringHelper.ToStringWithCulture(driver_signal_count)); #line default #line hidden #line 247 "" this.Write("; i++) {\n if (!std::getline(valuestream, token, \',\')) {\n throw " + "MessageException(\"Unexpected end-of-stream\");\n }\n field++;\n }\n\n" + " bool source_is_undef;\n\n"); #line default #line hidden #line 256 "" foreach (var signal in RS.VerifySignals) { var cpptype = RS.TypeScope.GetType(signal); var typecast = cpptype.Name == "system_uint8" ? "(int)" : ""; if (cpptype.IsArray) { typecast = cpptype.ElementName == "system_uint8" ? "(int)" : ""; var eltype = cpptype.ElementName; var length = (int)RS.GetArrayLength(signal).DefaultValue; #line default #line hidden #line 264 "" this.Write(" for (i = 0; i < "); #line default #line hidden #line 264 "" this.Write(this.ToStringHelper.ToStringWithCulture(length)); #line default #line hidden #line 264 "" this.Write(@"; i++) { if (!std::getline(valuestream, token, ',')) { std::stringstream sstm; sstm << ""Unexpected end-of-line in cycle "" << cycle << "", field "" << field << std::endl; throw MessageException(sstm.str()); } source_is_undef = false; try { "); #line default #line hidden #line 273 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 273 "" this.Write(" tmpval = bus_"); #line default #line hidden #line 273 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 273 "" this.Write("."); #line default #line hidden #line 273 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 273 "" this.Write("(i);\n } catch (InvalidReadException e) {\n source_is_undef = tru" + "e;\n }\n\n if (token.compare(\"U\") == 0 && source_is_undef) {\n " + " // Don\'t care\n } else if (token.compare(\"U\") != 0 && bus_"); #line default #line hidden #line 280 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 280 "" this.Write("."); #line default #line hidden #line 280 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 280 "" this.Write("(i) != parse_"); #line default #line hidden #line 280 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 280 "" this.Write("(token)) {\n std::stringstream sstm;\n sstm << \"Error in cycl" + "e \" << cycle << std::endl;\n sstm << \"Expected value \" << "); #line default #line hidden #line 283 "" this.Write(this.ToStringHelper.ToStringWithCulture(typecast)); #line default #line hidden #line 283 "" this.Write("parse_"); #line default #line hidden #line 283 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 283 "" this.Write("(token) << \", but got \" << "); #line default #line hidden #line 283 "" this.Write(this.ToStringHelper.ToStringWithCulture(typecast)); #line default #line hidden #line 283 "" this.Write("bus_"); #line default #line hidden #line 283 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 283 "" this.Write("."); #line default #line hidden #line 283 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 283 "" this.Write("(i) << \" for field \" << "); #line default #line hidden #line 283 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 283 "" this.Write("_SIGNAL_NAMES[field] << \" (raw: \" << token << \")\" << std::endl;\n throw" + " MessageException(sstm.str());\n }\n field++;\n }\n\n"); #line default #line hidden #line 289 "" } else { #line default #line hidden #line 290 "" this.Write(@" if (!std::getline(valuestream, token, ',')) { std::stringstream sstm; sstm << ""Unexpected end-of-line in cycle "" << cycle << "", field "" << field << std::endl; throw MessageException(sstm.str()); } source_is_undef = false; try { "); #line default #line hidden #line 298 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.TypeScope.GetType(signal).Name)); #line default #line hidden #line 298 "" this.Write(" tmpval = bus_"); #line default #line hidden #line 298 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 298 "" this.Write("."); #line default #line hidden #line 298 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 298 "" this.Write("();\n } catch (InvalidReadException e) {\n source_is_undef = true;\n }\n" + "\n if (token.compare(\"U\") == 0 && source_is_undef) {\n // Don\'t care\n " + " } else if (token.compare(\"U\") != 0 && bus_"); #line default #line hidden #line 305 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 305 "" this.Write("."); #line default #line hidden #line 305 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 305 "" this.Write("() != parse_"); #line default #line hidden #line 305 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.TypeScope.GetType(signal).Name)); #line default #line hidden #line 305 "" this.Write("(token)) {\n std::stringstream sstm;\n sstm << \"Error in cycle \" << c" + "ycle << std::endl;\n sstm << \"Expected value \" << "); #line default #line hidden #line 308 "" this.Write(this.ToStringHelper.ToStringWithCulture(typecast)); #line default #line hidden #line 308 "" this.Write("parse_"); #line default #line hidden #line 308 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.TypeScope.GetType(signal).Name)); #line default #line hidden #line 308 "" this.Write("(token) << \", but got \" << "); #line default #line hidden #line 308 "" this.Write(this.ToStringHelper.ToStringWithCulture(typecast)); #line default #line hidden #line 308 "" this.Write("bus_"); #line default #line hidden #line 308 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusNameToValidName(signal.Parent as AST.Bus))); #line default #line hidden #line 308 "" this.Write("."); #line default #line hidden #line 308 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 308 "" this.Write("() << \" for field \" << "); #line default #line hidden #line 308 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 308 "" this.Write("_SIGNAL_NAMES[field] << \" (raw: \" << token << \")\" << std::endl;\n throw Mes" + "sageException(sstm.str());\n }\n field++;\n"); #line default #line hidden #line 312 "" } #line default #line hidden #line 313 "" } #line default #line hidden #line 314 "" this.Write("}\n\nvoid "); #line default #line hidden #line 316 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.AssemblyNameToFileName(Network))); #line default #line hidden #line 316 "" this.Write("::Stop()\n{\n if (trace_input != NULL) {\n trace_input->close();\n d" + "elete trace_input;\n }\n}\n"); #line default #line hidden return(this.GenerationEnvironment.ToString()); }
/// <summary> /// 导入方法 /// </summary> /// <returns></returns> public RestResult Import() { RestResult result = new RestResult(); Check.NullOrEmpty(ImportArgument, "ImportArgument"); try { using (SqlConnection conn = new SqlConnection(ImportArgument.DataConnectionString)) { conn.Open(); Check.True(OnBeginImport != null, () => { this.OnBeginImport(this, new EventArgs()); }); try { int secCount = 0; int faidCount = 0; int startRow = ImportArgument.FirstRowIsHead ? 1 : 0; using (DataBaseHelper helper = new DataBaseHelper(conn)) { IEnumerable <Column> TableColumns = helper.GetColumnsByTableName(ImportArgument.DataTable); Check.True(TableColumns != null, () => { var datas = File.ReadLines(ImportArgument.FilePath, Encoding.Default).ToArray(); string insertSql = string.Empty; for (int i = startRow; i < datas.Length; i++) { var mapSql = Mapping(TableColumns.Where(p => !p.IsPrimaryKey), datas[i].Split(',')); insertSql = string.Format(InsertSql, ImportArgument.DataTable, mapSql); Check.True(conn.State != ConnectionState.Open, () => { conn.Open(); }); using (SqlCommand cmd2 = new SqlCommand(insertSql, conn)) { var ret3 = cmd2.ExecuteNonQuery(); Check.True(ret3 != -1, () => { secCount++; }, () => { faidCount++; }); Check.True(this.OnDataImported != null, () => { this.OnDataImported(this, new ImportingEventArgs() { IsImportSuccessed = ret3 != -1, CurrentImportIndex = startRow == 0 ? i + 1 : i, DataCount = datas.Length }); }); } } Check.True(faidCount > 0, () => { result.IsSuccess = false; result.Message = string.Format(RS.get("Importer_Result_HasFaildItem"), secCount, faidCount); }, () => { result.IsSuccess = true; result.Message = string.Format(RS.get("Importer_Result_Success"), secCount); }); }, () => { result.IsSuccess = false; result.Message = RS.get("Importer_Exception_CanNotGetConstruction"); }); } } catch (Exception ex) { result.IsSuccess = false; result.Message = ex.Message; } Check.True(OnEndImport != null, () => { this.OnEndImport(this, new EventArgs()); }); } } catch (Exception ex) { result.IsSuccess = false; result.Message = ex.Message; } return(result); }
public virtual string TransformText() { this.GenerationEnvironment = null; #line 1 "" this.Write(""); #line default #line hidden #line 6 "" this.Write("#include <iostream>\n#include <cstring>\n#include \""); #line default #line hidden #line 8 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.BusDefinitionsFileName(Network))); #line default #line hidden #line 8 "" this.Write("\"\n\n// Insert additional includes here\n// #### USER-DATA-INCLUDE-START\n// #### USE" + "R-DATA-INCLUDE-END\n\n"); #line default #line hidden #line 14 "" var known = new HashSet <Type>(); foreach (var bus in Network.Busses) { if (known.Contains(bus.SourceType)) { continue; } known.Add(bus.SourceType); #line default #line hidden #line 21 "" this.Write("\n"); #line default #line hidden #line 22 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 22 "" this.Write("::"); #line default #line hidden #line 22 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 22 "" this.Write(" () {\n"); #line default #line hidden #line 23 "" foreach (var signal in bus.Signals) { var cpptype = RS.TypeScope.GetType(signal); if (cpptype.IsArray) { var eltype = cpptype.ElementName; string arraylen = string.Empty; if (signal.DefaultValue is SME.AST.ArrayCreateExpression) { arraylen = (signal.DefaultValue as SME.AST.ArrayCreateExpression).ElementExpressions.Length.ToString(); } else if (signal.DefaultValue is SME.AST.EmptyArrayCreateExpression) { arraylen = RS.Renderer.RenderExpression((signal.DefaultValue as SME.AST.EmptyArrayCreateExpression).SizeExpression); } else { arraylen = RS.GetArrayLength(signal).DefaultValue.ToString(); } #line default #line hidden #line 37 "" this.Write(" \n size_"); #line default #line hidden #line 38 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 38 "" this.Write(" = "); #line default #line hidden #line 38 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylen)); #line default #line hidden #line 38 "" this.Write(";\n valid_"); #line default #line hidden #line 39 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 39 "" this.Write(" = new bool[size_"); #line default #line hidden #line 39 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 39 "" this.Write("];\n written_"); #line default #line hidden #line 40 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 40 "" this.Write(" = new bool[size_"); #line default #line hidden #line 40 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 40 "" this.Write("];\n staged_"); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 41 "" this.Write(" = new bool[size_"); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 41 "" this.Write("];\n\n write_"); #line default #line hidden #line 43 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 43 "" this.Write(" = new "); #line default #line hidden #line 43 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 43 "" this.Write("[size_"); #line default #line hidden #line 43 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 43 "" this.Write("];\n read_"); #line default #line hidden #line 44 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 44 "" this.Write(" = new "); #line default #line hidden #line 44 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 44 "" this.Write("[size_"); #line default #line hidden #line 44 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 44 "" this.Write("];\n\n std::memset(written_"); #line default #line hidden #line 46 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 46 "" this.Write(", 0, size_"); #line default #line hidden #line 46 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 46 "" this.Write(" * sizeof(bool));\n std::memset(staged_"); #line default #line hidden #line 47 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 47 "" this.Write(", 0, size_"); #line default #line hidden #line 47 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 47 "" this.Write(" * sizeof(bool));\n"); #line default #line hidden #line 48 "" if (signal.DefaultValue == null) { #line default #line hidden #line 49 "" this.Write(" std::memset(valid_"); #line default #line hidden #line 49 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 49 "" this.Write(", 0, size_"); #line default #line hidden #line 49 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 49 "" this.Write(" * sizeof(bool));\n"); #line default #line hidden #line 50 "" } else { #line default #line hidden #line 51 "" this.Write(" std::memset(valid_"); #line default #line hidden #line 51 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 51 "" this.Write(", 1, size_"); #line default #line hidden #line 51 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 51 "" this.Write(" * sizeof(bool));\n"); #line default #line hidden #line 52 "" if ((signal.DefaultValue is SME.AST.ArrayCreateExpression) || signal.DefaultValue is Array) { #line default #line hidden #line 53 "" this.Write(" "); #line default #line hidden #line 53 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 53 "" this.Write(" orig_"); #line default #line hidden #line 53 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 53 "" this.Write("[] = "); #line default #line hidden #line 53 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.Renderer.GetInitializer(signal))); #line default #line hidden #line 53 "" this.Write(";\n std::memcpy(read_"); #line default #line hidden #line 54 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 54 "" this.Write(", orig_"); #line default #line hidden #line 54 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 54 "" this.Write(", "); #line default #line hidden #line 54 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylen)); #line default #line hidden #line 54 "" this.Write(" * sizeof("); #line default #line hidden #line 54 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 54 "" this.Write("));\n std::memcpy(write_"); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 55 "" this.Write(", orig_"); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 55 "" this.Write(", "); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylen)); #line default #line hidden #line 55 "" this.Write(" * sizeof("); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 55 "" this.Write("));\n"); #line default #line hidden #line 56 "" } #line default #line hidden #line 57 "" } #line default #line hidden #line 58 "" } else { #line default #line hidden #line 59 "" this.Write(" written_"); #line default #line hidden #line 59 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 59 "" this.Write(" = false;\n"); #line default #line hidden #line 60 "" if (signal.DefaultValue == null) { #line default #line hidden #line 61 "" this.Write(" valid_"); #line default #line hidden #line 61 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 61 "" this.Write(" = false;\n"); #line default #line hidden #line 62 "" } #line default #line hidden #line 63 "" } #line default #line hidden #line 64 "" } #line default #line hidden #line 65 "" this.Write("\n"); #line default #line hidden #line 66 "" foreach (var signal in bus.Signals.Where(x => x.DefaultValue != null)) { var cpptype = RS.TypeScope.GetType(signal); var ini = RS.Renderer.GetInitializer(signal); if (!cpptype.IsArray) { #line default #line hidden #line 71 "" this.Write(" valid_"); #line default #line hidden #line 71 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 71 "" this.Write(" = true;\n"); #line default #line hidden #line 72 "" } #line default #line hidden #line 73 "" if (!string.IsNullOrWhiteSpace(ini)) { #line default #line hidden #line 74 "" this.Write(" read_"); #line default #line hidden #line 74 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 74 "" this.Write(" = write_"); #line default #line hidden #line 74 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 74 "" this.Write(" = "); #line default #line hidden #line 74 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.Renderer.GetInitializer(signal))); #line default #line hidden #line 74 "" this.Write(";\n"); #line default #line hidden #line 75 "" } #line default #line hidden #line 76 "" } #line default #line hidden #line 77 "" this.Write("}\n\n"); #line default #line hidden #line 79 "" foreach (var signal in bus.Signals) { var cpptype = RS.TypeScope.GetType(signal); if (cpptype.IsArray) { var eltype = cpptype.ElementName; #line default #line hidden #line 85 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 85 "" this.Write(" "); #line default #line hidden #line 85 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 85 "" this.Write("::"); #line default #line hidden #line 85 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 85 "" this.Write("(size_t index) const {\n if (index >= size_"); #line default #line hidden #line 86 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 86 "" this.Write(")\n throw IndexOutOfBoundsException(\"Invalid index: "); #line default #line hidden #line 87 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 87 "" this.Write("."); #line default #line hidden #line 87 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 87 "" this.Write("\");\n if (!valid_"); #line default #line hidden #line 88 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 88 "" this.Write("[index])\n throw InvalidReadException(\"Invalid read: "); #line default #line hidden #line 89 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 89 "" this.Write("."); #line default #line hidden #line 89 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 89 "" this.Write("\");\n\n return read_"); #line default #line hidden #line 91 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 91 "" this.Write("[index];\n}\n\n"); #line default #line hidden #line 94 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 94 "" this.Write(" "); #line default #line hidden #line 94 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 94 "" this.Write("::"); #line default #line hidden #line 94 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 94 "" this.Write("(size_t index, "); #line default #line hidden #line 94 "" this.Write(this.ToStringHelper.ToStringWithCulture(eltype)); #line default #line hidden #line 94 "" this.Write(" value) {\n if (index >= size_"); #line default #line hidden #line 95 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 95 "" this.Write(")\n throw IndexOutOfBoundsException(\"Invalid index: "); #line default #line hidden #line 96 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 96 "" this.Write("."); #line default #line hidden #line 96 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 96 "" this.Write("\");\n if (written_"); #line default #line hidden #line 97 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 97 "" this.Write("[index])\n throw InvalidDoubleWriteException(\"Invalid write: "); #line default #line hidden #line 98 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 98 "" this.Write("."); #line default #line hidden #line 98 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 98 "" this.Write("\");\n\n staged_"); #line default #line hidden #line 100 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 100 "" this.Write("[index] = true;\n return write_"); #line default #line hidden #line 101 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 101 "" this.Write("[index] = value;\n}\n"); #line default #line hidden #line 103 "" } else { #line default #line hidden #line 104 "" this.Write(this.ToStringHelper.ToStringWithCulture(Type(signal))); #line default #line hidden #line 104 "" this.Write(" "); #line default #line hidden #line 104 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 104 "" this.Write("::"); #line default #line hidden #line 104 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 104 "" this.Write("() const {\n if (!valid_"); #line default #line hidden #line 105 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 105 "" this.Write(")\n throw InvalidReadException(\"Invalid read: "); #line default #line hidden #line 106 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 106 "" this.Write("."); #line default #line hidden #line 106 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 106 "" this.Write("\");\n\n return read_"); #line default #line hidden #line 108 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 108 "" this.Write(";\n}\n\n"); #line default #line hidden #line 111 "" this.Write(this.ToStringHelper.ToStringWithCulture(Type(signal))); #line default #line hidden #line 111 "" this.Write(" "); #line default #line hidden #line 111 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 111 "" this.Write("::"); #line default #line hidden #line 111 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 111 "" this.Write("("); #line default #line hidden #line 111 "" this.Write(this.ToStringHelper.ToStringWithCulture(Type(signal))); #line default #line hidden #line 111 "" this.Write(" value) {\n if (written_"); #line default #line hidden #line 112 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 112 "" this.Write(")\n throw InvalidDoubleWriteException(\"Invalid write: "); #line default #line hidden #line 113 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 113 "" this.Write("."); #line default #line hidden #line 113 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 113 "" this.Write("\");\n\n staged_"); #line default #line hidden #line 115 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 115 "" this.Write(" = true;\n return write_"); #line default #line hidden #line 116 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 116 "" this.Write(" = value;\n}\n"); #line default #line hidden #line 118 "" } #line default #line hidden #line 119 "" } #line default #line hidden #line 120 "" this.Write("\nvoid "); #line default #line hidden #line 121 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 121 "" this.Write("::forward_signals() {\n size_t i;\n\n"); #line default #line hidden #line 124 "" foreach (var signal in bus.Signals) { var cpptype = RS.TypeScope.GetType(signal); if (cpptype.IsArray) { var eltype = cpptype.ElementName; #line default #line hidden #line 129 "" this.Write(" for(i = 0; i < size_"); #line default #line hidden #line 129 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 129 "" this.Write("; i++) {\n if (staged_"); #line default #line hidden #line 130 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 130 "" this.Write("[i]) {\n written_"); #line default #line hidden #line 131 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 131 "" this.Write("[i] = true;\n staged_"); #line default #line hidden #line 132 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 132 "" this.Write("[i] = false;\n valid_"); #line default #line hidden #line 133 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 133 "" this.Write("[i] = true;\n read_"); #line default #line hidden #line 134 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 134 "" this.Write("[i] = write_"); #line default #line hidden #line 134 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 134 "" this.Write("[i];\n }\n }\n"); #line default #line hidden #line 137 "" } else { #line default #line hidden #line 138 "" this.Write(" if (staged_"); #line default #line hidden #line 138 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 138 "" this.Write(") {\n written_"); #line default #line hidden #line 139 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 139 "" this.Write(" = true;\n staged_"); #line default #line hidden #line 140 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 140 "" this.Write(" = false;\n valid_"); #line default #line hidden #line 141 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 141 "" this.Write(" = true;\n read_"); #line default #line hidden #line 142 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 142 "" this.Write(" = write_"); #line default #line hidden #line 142 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 142 "" this.Write(";\n }\n"); #line default #line hidden #line 144 "" } #line default #line hidden #line 145 "" } #line default #line hidden #line 146 "" this.Write("}\n\nvoid "); #line default #line hidden #line 148 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 148 "" this.Write("::propagate_signals() {\n size_t i;\n\n"); #line default #line hidden #line 151 "" foreach (var signal in bus.Signals) { var cpptype = RS.TypeScope.GetType(signal); if (cpptype.IsArray) { var eltype = cpptype.ElementName; #line default #line hidden #line 155 "" this.Write(" for (i = 0; i < size_"); #line default #line hidden #line 155 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 155 "" this.Write("; i++) {\n if (written_"); #line default #line hidden #line 156 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 156 "" this.Write("[i]) {\n written_"); #line default #line hidden #line 157 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 157 "" this.Write("[i] = false;\n }\n }\n"); #line default #line hidden #line 160 "" } else { #line default #line hidden #line 161 "" this.Write(" if (written_"); #line default #line hidden #line 161 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 161 "" this.Write(") {\n written_"); #line default #line hidden #line 162 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 162 "" this.Write(" = false;\n }\n"); #line default #line hidden #line 164 "" } #line default #line hidden #line 165 "" } #line default #line hidden #line 166 "" this.Write("}\n\n"); #line default #line hidden #line 168 "" } #line default #line hidden #line 169 "" this.Write("\n// Insert additional code and classes here\n// #### USER-DATA-EXTRA-START\n// ####" + " USER-DATA-EXTRA-END\n"); #line default #line hidden return(this.GenerationEnvironment.ToString()); }
public void ConstructorThrowsWithIllegalMediaRange(MediaTypeHeaderValue mediaRange, MediaTypeHeaderValue mediaType) { string errorMessage = RS.Format(Properties.Resources.InvalidMediaRange, mediaRange.MediaType); Assert.Throws <InvalidOperationException>(() => new MediaRangeMapping(mediaRange, mediaType), errorMessage); }
private static bool Insert(JObject root, string[] path, string value, bool throwOnError) { // to-do: verify consistent with new parsing, whether single value is in path or value Contract.Assert(root != null, "Root object can't be null"); JObject current = root; JObject parent = null; for (int i = 0; i < path.Length - 1; i++) { if (String.IsNullOrEmpty(path[i])) { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.InvalidArrayInsert, BuildPathString(path, i))); } return(false); } if (!((IDictionary <string, JToken>)current).ContainsKey(path[i])) { current[path[i]] = new JObject(); } else { // Since the loop goes up to the next-to-last item in the path, if we hit a null // or a primitive, then we have a mismatching node. if (current[path[i]] == null || current[path[i]] is JValue) { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.FormUrlEncodedMismatchingTypes, BuildPathString(path, i))); } return(false); } } parent = current; current = current[path[i]] as JObject; } string lastKey = path[path.Length - 1]; if (String.IsNullOrEmpty(lastKey) && path.Length > 1) { if (!AddToArray(parent, path, value, throwOnError)) { return(false); } } else { if (current == null) { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.FormUrlEncodedMismatchingTypes, BuildPathString(path, path.Length - 1))); } return(false); } if (!AddToObject(current, path, value, throwOnError)) { return(false); } } return(true); }
/// <summary> /// Parses the data provided and generates parsed MIME body part bodies in the form of <see cref="ArraySegment{T}"/> which are ready to /// write to the output stream. /// </summary> /// <param name="data">The data to parse</param> /// <param name="bytesRead">The number of bytes available in the input data</param> /// <returns>Parsed <see cref="MimeBodyPart"/> instances.</returns> public IEnumerable <MimeBodyPart> ParseBuffer(byte[] data, int bytesRead) { int bytesConsumed = 0; bool isFinal = false; if (bytesRead == 0) { CleanupCurrentBodyPart(); throw new IOException(Properties.Resources.ReadAsMimeMultipartUnexpectedTermination); } // Make sure we remove an old array segments. _currentBodyPart.Segments.Clear(); while (bytesConsumed < bytesRead) { _mimeStatus = _mimeParser.ParseBuffer(data, bytesRead, ref bytesConsumed, out _parsedBodyPart[0], out _parsedBodyPart[1], out isFinal); if (_mimeStatus != MimeMultipartParser.State.BodyPartCompleted && _mimeStatus != MimeMultipartParser.State.NeedMoreData) { CleanupCurrentBodyPart(); throw new IOException(RS.Format(Properties.Resources.ReadAsMimeMultipartParseError, bytesConsumed, data)); } // First body is empty preamble which we just ignore if (_isFirst) { if (_mimeStatus == MimeMultipartParser.State.BodyPartCompleted) { _isFirst = false; } continue; } // Parse the two array segments containing parsed body parts that the MIME parser gave us foreach (ArraySegment <byte> part in _parsedBodyPart) { if (part.Count == 0) { continue; } if (_bodyPartHeaderStatus != ParserState.Done) { int headerConsumed = part.Offset; _bodyPartHeaderStatus = _currentBodyPart.HeaderParser.ParseBuffer(part.Array, part.Count + part.Offset, ref headerConsumed); if (_bodyPartHeaderStatus == ParserState.Done) { // Add the remainder as body part content _currentBodyPart.Segments.Add(new ArraySegment <byte>(part.Array, headerConsumed, part.Count + part.Offset - headerConsumed)); } else if (_bodyPartHeaderStatus != ParserState.NeedMoreData) { CleanupCurrentBodyPart(); throw new IOException(RS.Format(Properties.Resources.ReadAsMimeMultipartHeaderParseError, headerConsumed, part.Array)); } } else { // Add the data as body part content _currentBodyPart.Segments.Add(part); } } if (_mimeStatus == MimeMultipartParser.State.BodyPartCompleted) { // If body is completed then swap current body part MimeBodyPart completed = _currentBodyPart; completed.IsComplete = true; completed.IsFinal = isFinal; _currentBodyPart = new MimeBodyPart(_streamProvider, _maxBodyPartHeaderSize); _mimeStatus = MimeMultipartParser.State.NeedMoreData; _bodyPartHeaderStatus = ParserState.NeedMoreData; yield return(completed); } else { // Otherwise return what we have yield return(_currentBodyPart); } } }
private static bool AddToObject(JObject obj, string[] path, string value, bool throwOnError) { Contract.Assert(obj != null, "JsonObject cannot be null"); int pathIndex = path.Length - 1; string key = path[pathIndex]; if (((IDictionary <string, JToken>)obj).ContainsKey(key)) { if (obj[key] == null || obj[key].Type == JTokenType.Null) { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.FormUrlEncodedMismatchingTypes, BuildPathString(path, pathIndex))); } return(false); } bool isRoot = path.Length == 1; if (isRoot) { // jQuery 1.3 behavior, make it into an array(object) if primitive if (obj[key].Type == JTokenType.String) { string oldValue = obj[key].ToObject <string>(); JObject jo = new JObject(); jo.Add("0", oldValue); jo.Add("1", value); obj[key] = jo; } else if (obj[key] is JObject) { // if it was already an object, simply add the value JObject jo = obj[key] as JObject; string index = GetIndex(jo, throwOnError); if (index == null) { return(false); } jo.Add(index, value); } } else { if (throwOnError) { throw new ArgumentException(RS.Format(Properties.Resources.JQuery13CompatModeNotSupportNestedJson, BuildPathString(path, pathIndex))); } return(false); } } else { // if the object didn't contain the key, simply add it now // the null check here is necessary because otherwise the created JValue type will be implictly cast as a string JValue if (value == null) { obj[key] = null; } else { obj[key] = value; } } return(true); }
private static ParserState ParseStatusLine( byte[] buffer, int bytesReady, ref int bytesConsumed, ref HttpStatusLineState statusLineState, int maximumHeaderLength, ref int totalBytesConsumed, StringBuilder currentToken, HttpUnsortedResponse httpResponse) { Contract.Assert((bytesReady - bytesConsumed) >= 0, "ParseRequestLine()|(bytesReady - bytesConsumed) < 0"); Contract.Assert(maximumHeaderLength <= 0 || totalBytesConsumed <= maximumHeaderLength, "ParseRequestLine()|Headers already read exceeds limit."); // Remember where we started. int initialBytesParsed = bytesConsumed; int segmentStart; // Set up parsing status with what will happen if we exceed the buffer. ParserState parseStatus = ParserState.DataTooBig; int effectiveMax = maximumHeaderLength <= 0 ? Int32.MaxValue : (maximumHeaderLength - totalBytesConsumed + bytesConsumed); if (bytesReady < effectiveMax) { parseStatus = ParserState.NeedMoreData; effectiveMax = bytesReady; } Contract.Assert(bytesConsumed < effectiveMax, "We have already consumed more than the max header length."); switch (statusLineState) { case HttpStatusLineState.BeforeVersionNumbers: segmentStart = bytesConsumed; while (buffer[bytesConsumed] != '/') { if (buffer[bytesConsumed] < 0x21 || buffer[bytesConsumed] > 0x7a) { parseStatus = ParserState.Invalid; goto quit; } if (++bytesConsumed == effectiveMax) { string token = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(token); goto quit; } } if (bytesConsumed > segmentStart) { string token = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(token); } // Validate value string version = currentToken.ToString(); if (String.CompareOrdinal(FormattingUtilities.HttpVersionToken, version) != 0) { throw new FormatException(RS.Format(Properties.Resources.HttpInvalidVersion, version, FormattingUtilities.HttpVersionToken)); } currentToken.Clear(); // Move past the '/' statusLineState = HttpStatusLineState.MajorVersionNumber; if (++bytesConsumed == effectiveMax) { goto quit; } goto case HttpStatusLineState.MajorVersionNumber; case HttpStatusLineState.MajorVersionNumber: segmentStart = bytesConsumed; while (buffer[bytesConsumed] != '.') { if (buffer[bytesConsumed] < '0' || buffer[bytesConsumed] > '9') { parseStatus = ParserState.Invalid; goto quit; } if (++bytesConsumed == effectiveMax) { string major = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(major); goto quit; } } if (bytesConsumed > segmentStart) { string major = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(major); } // Move past the "." currentToken.Append('.'); statusLineState = HttpStatusLineState.MinorVersionNumber; if (++bytesConsumed == effectiveMax) { goto quit; } goto case HttpStatusLineState.MinorVersionNumber; case HttpStatusLineState.MinorVersionNumber: segmentStart = bytesConsumed; while (buffer[bytesConsumed] != ' ') { if (buffer[bytesConsumed] < '0' || buffer[bytesConsumed] > '9') { parseStatus = ParserState.Invalid; goto quit; } if (++bytesConsumed == effectiveMax) { string minor = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(minor); goto quit; } } if (bytesConsumed > segmentStart) { string minor = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(minor); } // Copy out value httpResponse.Version = Version.Parse(currentToken.ToString()); currentToken.Clear(); // Move past the SP statusLineState = HttpStatusLineState.StatusCode; if (++bytesConsumed == effectiveMax) { goto quit; } goto case HttpStatusLineState.StatusCode; case HttpStatusLineState.StatusCode: segmentStart = bytesConsumed; while (buffer[bytesConsumed] != ' ') { if (buffer[bytesConsumed] < '0' || buffer[bytesConsumed] > '9') { parseStatus = ParserState.Invalid; goto quit; } if (++bytesConsumed == effectiveMax) { string method = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(method); goto quit; } } if (bytesConsumed > segmentStart) { string method = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(method); } // Copy value out int statusCode = Int32.Parse(currentToken.ToString(), CultureInfo.InvariantCulture); if (statusCode < 100 || statusCode > 1000) { throw new FormatException(RS.Format(Properties.Resources.HttpInvalidStatusCode, statusCode, 100, 1000)); } httpResponse.StatusCode = (HttpStatusCode)statusCode; currentToken.Clear(); // Move past the SP statusLineState = HttpStatusLineState.ReasonPhrase; if (++bytesConsumed == effectiveMax) { goto quit; } goto case HttpStatusLineState.ReasonPhrase; case HttpStatusLineState.ReasonPhrase: segmentStart = bytesConsumed; while (buffer[bytesConsumed] != '\r') { if (buffer[bytesConsumed] < 0x20 || buffer[bytesConsumed] > 0x7a) { parseStatus = ParserState.Invalid; goto quit; } if (++bytesConsumed == effectiveMax) { string addr = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(addr); goto quit; } } if (bytesConsumed > segmentStart) { string addr = Encoding.UTF8.GetString(buffer, segmentStart, bytesConsumed - segmentStart); currentToken.Append(addr); } // Copy value out httpResponse.ReasonPhrase = currentToken.ToString(); currentToken.Clear(); // Move past the CR statusLineState = HttpStatusLineState.AfterCarriageReturn; if (++bytesConsumed == effectiveMax) { goto quit; } goto case HttpStatusLineState.AfterCarriageReturn; case HttpStatusLineState.AfterCarriageReturn: if (buffer[bytesConsumed] != '\n') { parseStatus = ParserState.Invalid; goto quit; } parseStatus = ParserState.Done; bytesConsumed++; break; } quit: totalBytesConsumed += bytesConsumed - initialBytesParsed; return(parseStatus); }
/// <summary> /// Writes synchronously to the buffered stream. /// </summary> /// <param name="type">The type of the object to write.</param> /// <param name="value">The object value to write. It may be <c>null</c>.</param> /// <param name="stream">The <see cref="Stream"/> to which to write.</param> /// <param name="contentHeaders">The <see cref="HttpContentHeaders"/> if available. It may be <c>null</c>.</param> public virtual void WriteToStream(Type type, object value, Stream stream, HttpContentHeaders contentHeaders) { throw new NotSupportedException(RS.Format(Properties.Resources.MediaTypeFormatterCannotWriteSync, GetType().Name)); }
public virtual string TransformText() { this.GenerationEnvironment = null; #line 6 "" this.Write(@" library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; -- library SYSTEM_TYPES; use work.SYSTEM_TYPES.ALL; -- User defined packages here -- #### USER-DATA-IMPORTS-START -- #### USER-DATA-IMPORTS-END package CUSTOM_TYPES is -- User defined types here -- #### USER-DATA-CORETYPES-START -- #### USER-DATA-CORETYPES-END "); #line default #line hidden #line 24 "" if (RS.CustomTypes.Any()) { #line default #line hidden #line 25 "" this.Write(" -- Types for processes\n"); #line default #line hidden #line 26 "" foreach (var t in RS.CustomTypes) { #line default #line hidden #line 27 "" this.Write(" type "); #line default #line hidden #line 27 "" this.Write(this.ToStringHelper.ToStringWithCulture(t.ToSafeVHDLName())); #line default #line hidden #line 27 "" this.Write(" is\n"); #line default #line hidden #line 28 "" foreach (var f in RS.ListMembers(t)) { #line default #line hidden #line 29 "" this.Write(" "); #line default #line hidden #line 29 "" this.Write(this.ToStringHelper.ToStringWithCulture(f)); #line default #line hidden #line 29 "" this.Write("\n"); #line default #line hidden #line 30 "" } #line default #line hidden #line 31 "" this.Write("\n"); #line default #line hidden #line 32 "" } #line default #line hidden #line 33 "" this.Write("\n"); #line default #line hidden #line 34 "" } #line default #line hidden #line 35 "" foreach (var t in RS.TypeDefinitions) { #line default #line hidden #line 36 "" this.Write(" "); #line default #line hidden #line 36 "" this.Write(this.ToStringHelper.ToStringWithCulture(t)); #line default #line hidden #line 36 "" this.Write(";\n"); #line default #line hidden #line 37 "" } #line default #line hidden #line 38 "" this.Write("\n"); #line default #line hidden #line 39 "" foreach (var enumtype in RS.EnumTypes.Where(x => x.IsIrregularEnum)) { #line default #line hidden #line 40 "" this.Write(" -- Converts an integer to "); #line default #line hidden #line 40 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 40 "" this.Write("\n pure function fromValue_"); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 41 "" this.Write("(v: INTEGER) return "); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 41 "" this.Write(";\n -- Converts a "); #line default #line hidden #line 42 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 42 "" this.Write(" to an integer\n pure function toValue_"); #line default #line hidden #line 43 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 43 "" this.Write("(v: "); #line default #line hidden #line 43 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 43 "" this.Write(") return INTEGER;\n"); #line default #line hidden #line 44 "" } #line default #line hidden #line 45 "" this.Write("\n"); #line default #line hidden #line 46 "" if (RS.BusArrays.Any()) { #line default #line hidden #line 47 "" this.Write(" -- Bus array definitions\n"); #line default #line hidden #line 48 "" foreach (var signal in RS.BusArrays) { var vhdltype = RS.VHDLType(signal); var elementtype = RS.TypeScope.GetByName(vhdltype.ElementName); var bus = signal.Parent as AST.Bus; var arraylength = RS.GetArrayLength(signal); if (elementtype.IsSystemType) { #line default #line hidden #line 55 "" this.Write(" subtype "); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 55 "" this.Write("_"); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 55 "" this.Write("_type is "); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(elementtype.ToSafeVHDLName())); #line default #line hidden #line 55 "" this.Write("_ARRAY(0 to "); #line default #line hidden #line 55 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylength)); #line default #line hidden #line 55 "" this.Write(" - 1);\n"); #line default #line hidden #line 56 "" } else if (RS.Config.USE_EXPLICIT_LITERAL_ARRAY_LENGTH) { #line default #line hidden #line 57 "" this.Write(" type "); #line default #line hidden #line 57 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 57 "" this.Write("_"); #line default #line hidden #line 57 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 57 "" this.Write("_type is array (0 to "); #line default #line hidden #line 57 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylength - 1)); #line default #line hidden #line 57 "" this.Write(") of "); #line default #line hidden #line 57 "" this.Write(this.ToStringHelper.ToStringWithCulture(elementtype.ToSafeVHDLName())); #line default #line hidden #line 57 "" this.Write(";\n"); #line default #line hidden #line 58 "" } else { #line default #line hidden #line 59 "" this.Write(" type "); #line default #line hidden #line 59 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 59 "" this.Write("_"); #line default #line hidden #line 59 "" this.Write(this.ToStringHelper.ToStringWithCulture(signal.Name)); #line default #line hidden #line 59 "" this.Write("_type is array (0 to "); #line default #line hidden #line 59 "" this.Write(this.ToStringHelper.ToStringWithCulture(arraylength)); #line default #line hidden #line 59 "" this.Write(" - 1) of "); #line default #line hidden #line 59 "" this.Write(this.ToStringHelper.ToStringWithCulture(elementtype.ToSafeVHDLName())); #line default #line hidden #line 59 "" this.Write(";\n"); #line default #line hidden #line 60 "" } #line default #line hidden #line 61 "" } #line default #line hidden #line 62 "" } #line default #line hidden #line 63 "" this.Write("\n"); #line default #line hidden #line 64 "" foreach (var enumtype in RS.EnumTypes) { #line default #line hidden #line 65 "" this.Write(" -- converts "); #line default #line hidden #line 65 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.Name)); #line default #line hidden #line 65 "" this.Write(" into a string\n pure function str(b: "); #line default #line hidden #line 66 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 66 "" this.Write(") return string;\n"); #line default #line hidden #line 67 "" } #line default #line hidden #line 68 "" this.Write("\n"); #line default #line hidden #line 69 "" if (RS.Constants.Any()) { #line default #line hidden #line 70 "" this.Write(" -- Constant definitions\n"); #line default #line hidden #line 71 "" } #line default #line hidden #line 72 "" foreach (var c in RS.Constants) { #line default #line hidden #line 73 "" this.Write(" "); #line default #line hidden #line 73 "" this.Write(this.ToStringHelper.ToStringWithCulture(c)); #line default #line hidden #line 73 "" this.Write(";\n"); #line default #line hidden #line 74 "" } #line default #line hidden #line 75 "" this.Write("\n\n-- User defined types here\n-- #### USER-DATA-TRAILTYPES-START\n-- #### USER-DATA" + "-TRAILTYPES-END\n\n\nend CUSTOM_TYPES;\n\n"); #line default #line hidden #line 84 "" if (RS.EnumTypes.Any()) { #line default #line hidden #line 85 "" this.Write("package body CUSTOM_TYPES is\n"); #line default #line hidden #line 86 "" foreach (var enumtype in RS.EnumTypes) { #line default #line hidden #line 87 "" this.Write(" -- converts "); #line default #line hidden #line 87 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype)); #line default #line hidden #line 87 "" this.Write(" into a string\n pure function str(b: "); #line default #line hidden #line 88 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 88 "" this.Write(") return string is\n begin\n return "); #line default #line hidden #line 90 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 90 "" this.Write("\'image(b);\n end str;\n\n"); #line default #line hidden #line 93 "" if (enumtype.IsIrregularEnum) { #line default #line hidden #line 94 "" this.Write(" -- Converts an integer to "); #line default #line hidden #line 94 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 94 "" this.Write("\n pure function fromValue_"); #line default #line hidden #line 95 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 95 "" this.Write("(v: INTEGER) return "); #line default #line hidden #line 95 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 95 "" this.Write(" is\n begin\n case v is\n"); #line default #line hidden #line 98 "" foreach (var f in RS.GetEnumValues(enumtype)) { #line default #line hidden #line 99 "" this.Write(" when "); #line default #line hidden #line 99 "" this.Write(this.ToStringHelper.ToStringWithCulture(f.Value)); #line default #line hidden #line 99 "" this.Write(" =>\n return "); #line default #line hidden #line 100 "" this.Write(this.ToStringHelper.ToStringWithCulture(f.Key)); #line default #line hidden #line 100 "" this.Write(";\n"); #line default #line hidden #line 101 "" } #line default #line hidden #line 102 "" this.Write(" when others =>\n return "); #line default #line hidden #line 103 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.GetEnumValues(enumtype).First().Key)); #line default #line hidden #line 103 "" this.Write(";\n end case;\n end fromValue_"); #line default #line hidden #line 105 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 105 "" this.Write(";\n\n -- Converts a "); #line default #line hidden #line 107 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 107 "" this.Write(" to an integer\n pure function toValue_"); #line default #line hidden #line 108 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 108 "" this.Write("(v: "); #line default #line hidden #line 108 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 108 "" this.Write(") return INTEGER is\n begin\n case v is\n"); #line default #line hidden #line 111 "" foreach (var f in RS.GetEnumValues(enumtype)) { #line default #line hidden #line 112 "" this.Write(" when "); #line default #line hidden #line 112 "" this.Write(this.ToStringHelper.ToStringWithCulture(f.Key)); #line default #line hidden #line 112 "" this.Write(" =>\n return "); #line default #line hidden #line 113 "" this.Write(this.ToStringHelper.ToStringWithCulture(f.Value)); #line default #line hidden #line 113 "" this.Write(";\n"); #line default #line hidden #line 114 "" } #line default #line hidden #line 115 "" this.Write(" when others =>\n return "); #line default #line hidden #line 116 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.GetEnumValues(enumtype).First().Value)); #line default #line hidden #line 116 "" this.Write(";\n end case;\n end toValue_"); #line default #line hidden #line 118 "" this.Write(this.ToStringHelper.ToStringWithCulture(enumtype.ToSafeVHDLName())); #line default #line hidden #line 118 "" this.Write(";\n\n"); #line default #line hidden #line 120 "" } #line default #line hidden #line 121 "" } #line default #line hidden #line 122 "" this.Write("\n\n-- User defined bodies here\n-- #### USER-DATA-BODY-START\n-- #### USER-DATA-BODY" + "-END\n\nend CUSTOM_TYPES;\n"); #line default #line hidden #line 129 "" } #line default #line hidden return(this.GenerationEnvironment.ToString()); }
/// <summary> /// Reads synchronously from the buffered stream. /// </summary> /// <param name="type">The type of the object to deserialize.</param> /// <param name="stream">The <see cref="Stream"/> to read.</param> /// <param name="contentHeaders">The <see cref="HttpContentHeaders"/> if available. It may be <c>null</c>.</param> /// <param name="formatterLogger">The <see cref="IFormatterLogger"/> to log events to.</param> /// <returns>An object of the given type.</returns> public virtual object ReadFromStream(Type type, Stream stream, HttpContentHeaders contentHeaders, IFormatterLogger formatterLogger) { throw new NotSupportedException(RS.Format(Properties.Resources.MediaTypeFormatterCannotReadSync, GetType().Name)); }
/// <summary> /// Validates whether the content contains an HTTP Request or an HTTP Response. /// </summary> /// <param name="content">The content to validate.</param> /// <param name="isRequest">if set to <c>true</c> if the content is either an HTTP Request or an HTTP Response.</param> /// <param name="throwOnError">Indicates whether validation failure should result in an <see cref="Exception"/> or not.</param> /// <returns><c>true</c> if content is either an HTTP Request or an HTTP Response</returns> internal static bool ValidateHttpMessageContent(HttpContent content, bool isRequest, bool throwOnError) { if (content == null) { throw new ArgumentNullException("content"); } MediaTypeHeaderValue contentType = content.Headers.ContentType; if (contentType != null) { if (!contentType.MediaType.Equals(DefaultMediaType, StringComparison.OrdinalIgnoreCase)) { if (throwOnError) { throw new ArgumentException( RS.Format(Properties.Resources.HttpMessageInvalidMediaType, FormattingUtilities.HttpContentType.Name, isRequest ? DefaultRequestMediaType : DefaultResponseMediaType), "content"); } else { return(false); } } foreach (NameValueHeaderValue parameter in contentType.Parameters) { if (parameter.Name.Equals(MsgTypeParameter, StringComparison.OrdinalIgnoreCase)) { string msgType = FormattingUtilities.UnquoteToken(parameter.Value); if (!msgType.Equals(isRequest ? DefaultRequestMsgType : DefaultResponseMsgType, StringComparison.OrdinalIgnoreCase)) { if (throwOnError) { throw new ArgumentException( RS.Format(Properties.Resources.HttpMessageInvalidMediaType, FormattingUtilities.HttpContentType.Name, isRequest ? DefaultRequestMediaType : DefaultResponseMediaType), "content"); } else { return(false); } } return(true); } } } if (throwOnError) { throw new ArgumentException( RS.Format(Properties.Resources.HttpMessageInvalidMediaType, FormattingUtilities.HttpContentType.Name, isRequest ? DefaultRequestMediaType : DefaultResponseMediaType), "content"); } else { return(false); } }
public virtual string TransformText() { this.GenerationEnvironment = null; #line 9 "" this.Write(@"library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; -- library SYSTEM_TYPES; use work.SYSTEM_TYPES.ALL; -- library CUSTOM_TYPES; use work.CUSTOM_TYPES.ALL; -- User defined packages here -- #### USER-DATA-IMPORTS-START -- #### USER-DATA-IMPORTS-END entity "); #line default #line hidden #line 23 "" this.Write(this.ToStringHelper.ToStringWithCulture(Network.Name)); #line default #line hidden #line 23 "" this.Write(" is\n port(\n\n"); #line default #line hidden #line 26 "" var feedbacks = RS.FeedbackBusses.ToArray(); var processes = Network.Processes.Where(x => !x.IsSimulation).ToArray(); #line default #line hidden #line 30 "" this.Write("\n"); #line default #line hidden #line 31 "" foreach (var bus in Network.Busses.Where(x => x.IsTopLevelInput || x.IsTopLevelOutput)) { var signaltype = "inout"; if (bus.IsTopLevelInput && !bus.IsTopLevelOutput) { signaltype = "in"; } else if (bus.IsTopLevelOutput && !bus.IsTopLevelInput) { signaltype = "out"; } #line default #line hidden #line 39 "" this.Write(" -- Top-level bus "); #line default #line hidden #line 39 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 39 "" this.Write(" signals\n"); #line default #line hidden #line 40 "" foreach (var signal in bus.Signals) { #line default #line hidden #line 41 "" this.Write(" "); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(bus.InstanceName + "_" + signal.Name))); #line default #line hidden #line 41 "" this.Write(": "); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(signaltype)); #line default #line hidden #line 41 "" this.Write(" "); #line default #line hidden #line 41 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal))); #line default #line hidden #line 41 "" this.Write(";\n"); #line default #line hidden #line 42 "" } #line default #line hidden #line 43 "" this.Write("\n"); #line default #line hidden #line 44 "" } #line default #line hidden #line 45 "" this.Write("\n"); #line default #line hidden #line 46 "" foreach (var bus in Network.Busses.Where(x => !(x.IsTopLevelInput || x.IsTopLevelOutput || x.IsInternal))) { #line default #line hidden #line 47 "" this.Write(" -- Interconnection bus "); #line default #line hidden #line 47 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 47 "" this.Write(" signals\n"); #line default #line hidden #line 48 "" foreach (var signal in bus.Signals) { #line default #line hidden #line 49 "" this.Write(" "); #line default #line hidden #line 49 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(bus.InstanceName + "_" + signal.Name))); #line default #line hidden #line 49 "" this.Write(": inout "); #line default #line hidden #line 49 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal))); #line default #line hidden #line 49 "" this.Write(";\n"); #line default #line hidden #line 50 "" } #line default #line hidden #line 51 "" } #line default #line hidden #line 52 "" this.Write(@" -- User defined signals here -- #### USER-DATA-ENTITYSIGNALS-START -- #### USER-DATA-ENTITYSIGNALS-END -- Enable signal ENB : in Std_logic; -- Finished signal FIN : out Std_logic; -- Reset signal RST : in Std_logic; -- Clock signal CLK : in Std_logic ); end "); #line default #line hidden #line 69 "" this.Write(this.ToStringHelper.ToStringWithCulture(Network.Name)); #line default #line hidden #line 69 "" this.Write(";\n\narchitecture RTL of "); #line default #line hidden #line 71 "" this.Write(this.ToStringHelper.ToStringWithCulture(Network.Name)); #line default #line hidden #line 71 "" this.Write(" is \n -- User defined signals here\n -- #### USER-DATA-SIGNALS-START\n -- #### " + "USER-DATA-SIGNALS-END\n\n"); #line default #line hidden #line 76 "" if (feedbacks.Any()) { #line default #line hidden #line 77 "" this.Write(" -- Feedback signals\n"); #line default #line hidden #line 78 "" foreach (var signal in feedbacks.SelectMany(x => x.Signals)) { #line default #line hidden #line 79 "" this.Write(" signal "); #line default #line hidden #line 79 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("current_" + (signal.Parent as AST.Bus).InstanceName + "_" + signal.Name))); #line default #line hidden #line 79 "" this.Write(", "); #line default #line hidden #line 79 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("next_" + (signal.Parent as AST.Bus).InstanceName + "_" + signal.Name))); #line default #line hidden #line 79 "" this.Write(": "); #line default #line hidden #line 79 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal))); #line default #line hidden #line 79 "" this.Write(";\n"); #line default #line hidden #line 80 "" } #line default #line hidden #line 81 "" } #line default #line hidden #line 82 "" this.Write("\n -- Process ready triggers\n"); #line default #line hidden #line 84 "" foreach (var p in processes) { #line default #line hidden #line 85 "" this.Write("\n signal "); #line default #line hidden #line 86 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("FIN_" + p.InstanceName))); #line default #line hidden #line 86 "" this.Write(this.ToStringHelper.ToStringWithCulture(p.IsClocked ? string.Empty : ", " + Naming.ToValidName("RDY_" + p.InstanceName))); #line default #line hidden #line 86 "" this.Write(" : std_logic;\n"); #line default #line hidden #line 87 "" } #line default #line hidden #line 88 "" this.Write("\n\n\n\n -- The primary ready driver signal\n signal RDY : std_logic;\n\nbegin\n\n"); #line default #line hidden #line 97 "" foreach (var p in processes) { #line default #line hidden #line 98 "" this.Write("\n -- Entity "); #line default #line hidden #line 99 "" this.Write(this.ToStringHelper.ToStringWithCulture(p.InstanceName)); #line default #line hidden #line 99 "" this.Write(" signals\n "); #line default #line hidden #line 100 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(p.InstanceName))); #line default #line hidden #line 100 "" this.Write(": entity work."); #line default #line hidden #line 100 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(p.Name))); #line default #line hidden #line 100 "" this.Write("\n"); #line default #line hidden #line 101 "" var lastel = p.SharedVariables.Cast <object>().Concat(p.SharedSignals).LastOrDefault(); if (lastel != null) { #line default #line hidden #line 104 "" this.Write(" generic map(\n"); #line default #line hidden #line 105 "" foreach (var variable in p.SharedVariables) { #line default #line hidden #line 106 "" this.Write(" "); #line default #line hidden #line 106 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("reset_" + variable.Name))); #line default #line hidden #line 106 "" this.Write(" => "); #line default #line hidden #line 106 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.GetResetExpression(variable))); #line default #line hidden #line 106 "" this.Write(this.ToStringHelper.ToStringWithCulture(variable == lastel ? "" : ",")); #line default #line hidden #line 106 "" this.Write("\n"); #line default #line hidden #line 107 "" } #line default #line hidden #line 108 "" foreach (var variable in p.SharedSignals) { #line default #line hidden #line 109 "" this.Write(" "); #line default #line hidden #line 109 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("reset_" + variable.Name))); #line default #line hidden #line 109 "" this.Write(" => "); #line default #line hidden #line 109 "" this.Write(this.ToStringHelper.ToStringWithCulture(RS.GetResetExpression(variable))); #line default #line hidden #line 109 "" this.Write(this.ToStringHelper.ToStringWithCulture(variable == lastel ? "" : ",")); #line default #line hidden #line 109 "" this.Write("\n"); #line default #line hidden #line 110 "" } #line default #line hidden #line 111 "" this.Write(" )\n"); #line default #line hidden #line 112 "" } #line default #line hidden #line 113 "" this.Write(" port map (\n"); #line default #line hidden #line 114 "" foreach (var bus in p.InputBusses.Union(p.OutputBusses)) { var isInput = p.InputBusses.Contains(bus); var isOutput = p.OutputBusses.Contains(bus); var isBoth = isInput && isOutput; var type = "Input/Output"; if (isInput && !isOutput) { type = "Input"; } else if (isOutput && !isInput) { type = "Output"; } var output_prefix = string.Empty; var input_prefix = string.Empty; if (feedbacks.Contains(bus)) { input_prefix = output_prefix = "current_"; } var busname = RS.GetLocalBusName(bus, p); var signals = bus.Signals.AsEnumerable(); if (isOutput && !isBoth) { signals = RS.WrittenSignals(p, bus); } #line default #line hidden #line 135 "" this.Write(" -- "); #line default #line hidden #line 135 "" this.Write(this.ToStringHelper.ToStringWithCulture(type)); #line default #line hidden #line 135 "" this.Write(" bus "); #line default #line hidden #line 135 "" this.Write(this.ToStringHelper.ToStringWithCulture(bus.Name)); #line default #line hidden #line 135 "" this.Write("\n"); #line default #line hidden #line 136 "" foreach (var signal in signals) { #line default #line hidden #line 137 "" if (isInput || isBoth) { #line default #line hidden #line 138 "" this.Write(" "); #line default #line hidden #line 138 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(busname + "_" + signal.Name))); #line default #line hidden #line 138 "" this.Write(" => "); #line default #line hidden #line 138 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(input_prefix + bus.InstanceName + "_" + signal.Name))); #line default #line hidden #line 138 "" this.Write(",\n"); #line default #line hidden #line 139 "" } else { #line default #line hidden #line 140 "" this.Write(" "); #line default #line hidden #line 140 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(busname + "_" + signal.Name))); #line default #line hidden #line 140 "" this.Write(" => "); #line default #line hidden #line 140 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(output_prefix + bus.InstanceName + "_" + signal.Name))); #line default #line hidden #line 140 "" this.Write(",\n"); #line default #line hidden #line 141 "" } #line default #line hidden #line 142 "" } #line default #line hidden #line 143 "" this.Write("\n"); #line default #line hidden #line 144 "" if (isBoth) { #line default #line hidden #line 145 "" foreach (var signal in bus.Signals) { #line default #line hidden #line 146 "" this.Write(" "); #line default #line hidden #line 146 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("out_" + busname + "_" + signal.Name))); #line default #line hidden #line 146 "" this.Write(" => "); #line default #line hidden #line 146 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("next_" + bus.InstanceName + "_" + signal.Name))); #line default #line hidden #line 146 "" this.Write(",\n"); #line default #line hidden #line 147 "" } #line default #line hidden #line 148 "" } #line default #line hidden #line 149 "" this.Write("\n"); #line default #line hidden #line 150 "" } #line default #line hidden #line 151 "" this.Write("\n CLK => CLK,\n RDY => "); #line default #line hidden #line 153 "" this.Write(this.ToStringHelper.ToStringWithCulture(p.IsClocked ? "RDY" : Naming.ToValidName("RDY_" + p.InstanceName))); #line default #line hidden #line 153 "" this.Write(",\n FIN => "); #line default #line hidden #line 154 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("FIN_" + p.InstanceName))); #line default #line hidden #line 154 "" this.Write(",\n ENB => ENB,\n RST => RST\n );\n\n"); #line default #line hidden #line 159 "" } #line default #line hidden #line 160 "" this.Write("\n -- Connect ready signals\n"); #line default #line hidden #line 162 "" foreach (var p in processes) { var parents = RS.DependsOn(p).Select(x => x.InstanceName).Distinct().ToArray(); if (parents.Length == 0) { if (!p.IsClocked) { #line default #line hidden #line 166 "" this.Write(" "); #line default #line hidden #line 166 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("RDY_" + p.InstanceName))); #line default #line hidden #line 166 "" this.Write(" <= RDY;\n"); #line default #line hidden #line 167 "" } } else if (parents.Length == 1) { #line default #line hidden #line 169 "" this.Write(" "); #line default #line hidden #line 169 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("RDY_" + p.InstanceName))); #line default #line hidden #line 169 "" this.Write(" <= "); #line default #line hidden #line 169 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("FIN_" + parents.First()))); #line default #line hidden #line 169 "" this.Write(";\n"); #line default #line hidden #line 170 "" } else { #line default #line hidden #line 171 "" this.Write(" -- Setup the RDY signal for "); #line default #line hidden #line 171 "" this.Write(this.ToStringHelper.ToStringWithCulture(p.InstanceName)); #line default #line hidden #line 171 "" this.Write("\n process(\n "); #line default #line hidden #line 173 "" this.Write(this.ToStringHelper.ToStringWithCulture(string.Join(", " + Environment.NewLine + " ", parents.Select(x => string.Format(Naming.ToValidName("FIN_" + x)))))); #line default #line hidden #line 173 "" this.Write("\n )\n begin\n if "); #line default #line hidden #line 176 "" this.Write(this.ToStringHelper.ToStringWithCulture(string.Join(" AND ", parents.Skip(1).Select(x => string.Format("{0} = {1}", Naming.ToValidName("FIN_" + parents.First()), Naming.ToValidName("FIN_" + x)))))); #line default #line hidden #line 176 "" this.Write(" then\n "); #line default #line hidden #line 177 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("RDY_" + p.InstanceName))); #line default #line hidden #line 177 "" this.Write(" <= "); #line default #line hidden #line 177 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("FIN_" + parents.First()))); #line default #line hidden #line 177 "" this.Write(";\n end if;\n end process;\n"); #line default #line hidden #line 180 "" } #line default #line hidden #line 181 "" } #line default #line hidden #line 182 "" this.Write("\n -- Setup the FIN feedback signals\n"); #line default #line hidden #line 184 "" if (processes.Length == 1) { #line default #line hidden #line 185 "" this.Write(" FIN <= "); #line default #line hidden #line 185 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("FIN_" + processes.First().InstanceName))); #line default #line hidden #line 185 "" this.Write(";\n"); #line default #line hidden #line 186 "" } else { #line default #line hidden #line 187 "" this.Write(" process(\n "); #line default #line hidden #line 188 "" this.Write(this.ToStringHelper.ToStringWithCulture(string.Join(", " + Environment.NewLine + " ", processes.Select(x => Naming.ToValidName("FIN_" + x.InstanceName))))); #line default #line hidden #line 188 "" this.Write("\n )\n begin\n if "); #line default #line hidden #line 191 "" this.Write(this.ToStringHelper.ToStringWithCulture(string.Join(" AND ", processes.Skip(1).Select(x => string.Format("{0} = {1}", Naming.ToValidName("FIN_" + processes.First().InstanceName), Naming.ToValidName("FIN_" + x.InstanceName)))))); #line default #line hidden #line 191 "" this.Write(" then\n FIN <= "); #line default #line hidden #line 192 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("FIN_" + processes.First().InstanceName))); #line default #line hidden #line 192 "" this.Write(";\n end if;\n end process;\n"); #line default #line hidden #line 195 "" } #line default #line hidden #line 196 "" this.Write(@" -- Propagate all clocked and feedback signals process( CLK, RST) variable readyflag: std_logic; begin if RST = '1' then RDY <= '0'; readyflag := '1'; elsif rising_edge(CLK) then if ENB = '1' then readyflag := not readyflag; RDY <= readyflag; "); #line default #line hidden #line 211 "" if (feedbacks.Any()) { #line default #line hidden #line 212 "" this.Write(" -- Forward feedback signals\n"); #line default #line hidden #line 213 "" foreach (var signal in feedbacks.SelectMany(x => x.Signals)) { #line default #line hidden #line 214 "" this.Write(" current_"); #line default #line hidden #line 214 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName((signal.Parent as AST.Bus).InstanceName + "_" + signal.Name))); #line default #line hidden #line 214 "" this.Write(" <= next_"); #line default #line hidden #line 214 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName((signal.Parent as AST.Bus).InstanceName + "_" + signal.Name))); #line default #line hidden #line 214 "" this.Write(";\n"); #line default #line hidden #line 215 "" } #line default #line hidden #line 216 "" } #line default #line hidden #line 217 "" this.Write(" end if;\n end if;\n end process;\n\n"); #line default #line hidden #line 221 "" if (feedbacks.Where(x => x.IsTopLevelOutput).Any()) { #line default #line hidden #line 222 "" this.Write(" -- Send feedback outputs to the actual output\n"); #line default #line hidden #line 223 "" foreach (var signal in feedbacks.Where(x => x.IsTopLevelOutput).SelectMany(x => x.Signals)) { #line default #line hidden #line 224 "" this.Write(" "); #line default #line hidden #line 224 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName((signal.Parent as AST.Bus).InstanceName + "_" + signal.Name))); #line default #line hidden #line 224 "" this.Write(" <= "); #line default #line hidden #line 224 "" this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("next_" + (signal.Parent as AST.Bus).InstanceName + "_" + signal.Name))); #line default #line hidden #line 224 "" this.Write(";\n"); #line default #line hidden #line 225 "" } #line default #line hidden #line 226 "" } #line default #line hidden #line 227 "" this.Write("\n\n-- User defined processes here\n-- #### USER-DATA-CODE-START\n-- #### USER-DATA-C" + "ODE-END\n\nend RTL;"); #line default #line hidden return(this.GenerationEnvironment.ToString()); }
protected override async Task <HttpResponseMessage> CreateItemPutResponse(FileSystemInfo info, string localFilePath, bool itemExists) { // Check that we have a matching conditional If-Match request for existing resources if (itemExists) { // Get current etag EntityTagHeaderValue currentEtag = GetCurrentEtag(info); // Existing resources require an etag to be updated. if (Request.Headers.IfMatch == null) { HttpResponseMessage missingIfMatchResponse = Request.CreateErrorResponse( HttpStatusCode.PreconditionFailed, Resources.VfsController_MissingIfMatch); return(missingIfMatchResponse); } bool isMatch = false; foreach (EntityTagHeaderValue etag in Request.Headers.IfMatch) { if (currentEtag.Equals(etag) || etag == EntityTagHeaderValue.Any) { isMatch = true; break; } } if (!isMatch) { HttpResponseMessage conflictFileResponse = Request.CreateErrorResponse( HttpStatusCode.PreconditionFailed, Resources.VfsController_EtagMismatch); conflictFileResponse.Headers.ETag = currentEtag; return(conflictFileResponse); } } // Save file try { using (Stream fileStream = GetFileWriteStream(localFilePath, fileExists: itemExists)) { try { await Request.Content.CopyToAsync(fileStream); } catch (Exception ex) { Tracer.TraceError(ex); HttpResponseMessage conflictResponse = Request.CreateErrorResponse( HttpStatusCode.Conflict, RS.Format(Resources.VfsController_WriteConflict, localFilePath), ex); return(conflictResponse); } } // Return either 204 No Content or 201 Created response HttpResponseMessage successFileResponse = Request.CreateResponse(itemExists ? HttpStatusCode.NoContent : HttpStatusCode.Created); // Set updated etag for the file successFileResponse.Headers.ETag = GetUpdatedEtag(localFilePath); return(successFileResponse); } catch (Exception e) { Tracer.TraceError(e); HttpResponseMessage errorResponse = Request.CreateErrorResponse(HttpStatusCode.Conflict, RS.Format(Resources.VfsController_WriteConflict, localFilePath), e); return(errorResponse); } }
protected override async Task <IActionResult> CreateItemPutResponse(FileSystemInfoBase info, string localFilePath, bool itemExists) { // Check that we have a matching conditional If-Match request for existing resources if (itemExists) { var requestHeaders = Request.GetTypedHeaders(); var responseHeaders = Response.GetTypedHeaders(); // Get current etag EntityTagHeaderValue currentEtag = CreateEntityTag(info); // Existing resources require an etag to be updated. if (requestHeaders.IfMatch == null) { return(StatusCode(StatusCodes.Status412PreconditionFailed, Resources.VfsController_MissingIfMatch)); } bool isMatch = false; foreach (EntityTagHeaderValue etag in requestHeaders.IfMatch) { if (currentEtag.Compare(etag, false) || etag == EntityTagHeaderValue.Any) { isMatch = true; break; } } if (!isMatch) { responseHeaders.ETag = currentEtag; return(StatusCode(StatusCodes.Status412PreconditionFailed, Resources.VfsController_EtagMismatch)); } } // Save file try { using (Stream fileStream = GetFileWriteStream(localFilePath, fileExists: itemExists)) { try { await Request.Body.CopyToAsync(fileStream); } catch (Exception ex) { Tracer.TraceError(ex); return(StatusCode( StatusCodes.Status409Conflict, RS.Format(Resources.VfsController_WriteConflict, localFilePath, ex.Message))); } } // Return either 204 No Content or 201 Created response // Set updated etag for the file info.Refresh(); Response.SetEntityTagHeader(CreateEntityTag(info), info.LastWriteTimeUtc); return(itemExists ? NoContent() : StatusCode(StatusCodes.Status201Created)); } catch (Exception ex) { Tracer.TraceError(ex); return(StatusCode(StatusCodes.Status409Conflict, RS.Format(Resources.VfsController_WriteConflict, localFilePath, ex.Message))); } }
/// <summary> /// Checks if the <see cref="g1"/> version (or subset versions) is equivalent to <see cref="g2"/>. /// </summary> /// <param name="g1">Version (set)</param> /// <param name="g2">Individual version</param> public static bool Contains(this GameVersion g1, GameVersion g2) { if (g1 == g2 || g1 == Any) { return(true); } switch (g1) { case RB: return(g2 == RD || g2 == BU || g2 == GN); case Stadium: case EventsGBGen1: case VCEvents: case RBY: return(RB.Contains(g2) || g2 == YW); case Gen1: return(RBY.Contains(g2) || g2 == Stadium || g2 == EventsGBGen1 || g2 == VCEvents); case GS: return(g2 == GD || g2 == SV); case Stadium2: case EventsGBGen2: case GSC: return(GS.Contains(g2) || g2 == C); case Gen2: return(GSC.Contains(g2) || g2 == Stadium2 || g2 == EventsGBGen2); case GBCartEraOnly: return(g2 == Stadium || g2 == Stadium2 || g2 == EventsGBGen1 || g2 == EventsGBGen2); case RS: return(g2 == R || g2 == S); case RSE: return(RS.Contains(g2) || g2 == E); case FRLG: return(g2 == FR || g2 == LG); case COLO: case XD: return(g2 == CXD); case CXD: return(g2 == COLO || g2 == XD); case RSBOX: return(RS.Contains(g2) || g2 == E || FRLG.Contains(g2)); case Gen3: return(RSE.Contains(g2) || FRLG.Contains(g2) || CXD.Contains(g2) || g2 == RSBOX); case DP: return(g2 == D || g2 == P); case HGSS: return(g2 == HG || g2 == SS); case DPPt: return(DP.Contains(g2) || g2 == Pt); case BATREV: return(DP.Contains(g2) || g2 == Pt || HGSS.Contains(g2)); case Gen4: return(DPPt.Contains(g2) || HGSS.Contains(g2) || g2 == BATREV); case BW: return(g2 == B || g2 == W); case B2W2: return(g2 == B2 || g2 == W2); case Gen5: return(BW.Contains(g2) || B2W2.Contains(g2)); case XY: return(g2 == X || g2 == Y); case ORAS: return(g2 == OR || g2 == AS); case Gen6: return(XY.Contains(g2) || ORAS.Contains(g2)); case SM: return(g2 == SN || g2 == MN); case USUM: return(g2 == US || g2 == UM); case GG: return(g2 == GP || g2 == GE || g2 == GO); case Gen7: return(SM.Contains(g2) || USUM.Contains(g2) || GG.Contains(g2)); default: return(false); } }
public void SupportedMediaTypesInsertThrowsWithMediaRange(MediaTypeHeaderValue mediaType) { MockMediaTypeFormatter formatter = new MockMediaTypeFormatter(); Collection <MediaTypeHeaderValue> supportedMediaTypes = formatter.SupportedMediaTypes; Assert.ThrowsArgument(() => supportedMediaTypes.Insert(0, mediaType), "item", RS.Format(Properties.Resources.CannotUseMediaRangeForSupportedMediaType, typeof(MediaTypeHeaderValue).Name, mediaType.MediaType)); }
protected override async Task <HttpResponseMessage> CreateFileDeleteResponse(FileInfoBase info) { HttpResponseMessage response; if (!PrepareBranch(true, out response)) { return(response); } response = await base.CreateFileDeleteResponse(info); // Get the query parameters QueryParameters parameters = new QueryParameters(this.Request); // Commit to local branch _repository.Commit(parameters.Message, authorName: null); bool rebasing = false; try { // Only rebase if VFS branch isn't up-to-date already if (!_repository.DoesBranchContainCommit(VfsUpdateBranch, MasterBranch)) { // Rebase to get updates from master while checking whether we get a conflict rebasing = true; _repository.Rebase(MasterBranch); } // Switch content back to master _repository.UpdateRef(VfsUpdateBranch); } catch (CommandLineException commandLineException) { Tracer.TraceError(commandLineException); // Abort the ongoing rebase operation try { if (rebasing) { _repository.RebaseAbort(); } } finally { _repository.Update(); } // The rebase resulted in a conflict. HttpResponseMessage conflictResponse = Request.CreateErrorResponse(HttpStatusCode.Conflict, commandLineException); return(conflictResponse); } // Get current commit ID string currentId = _repository.CurrentId; // Deploy changes unless request indicated to not deploy if (!parameters.NoDeploy) { DeployResult result = await DeployChangesAsync(currentId); if (result != null && result.Status != DeployStatus.Success) { HttpResponseMessage deploymentErrorResponse = Request.CreateErrorResponse(HttpStatusCode.InternalServerError, RS.Format(Resources.VfsScmController_DeploymentError, result.StatusText)); return(deploymentErrorResponse); } } // Delete succeeded. We add the etag as is has been updated as a result of the delete // This allows a client to keep track of the latest etag even for deletes. response.Headers.ETag = CreateEtag(currentId); return(response); }
public static Exception OAuthLoginConfigFileNotExist(string configFile) { return(new FileNotFoundException(RS.get(ResourceKey.ERRORS_OAuthLoginConfigFileNotExist), configFile)); }