예제 #1
0
        public Endpoint ToViewModel(EndpointPart part)
        {
            var tokenState = new Dictionary <string, object> {
                { "Content", part.ContentItem }
            };

            var viewModel = new Endpoint()
            {
                ApiPath     = _tokenizer.Replace(part.ApiPath, tokenState),
                Description = _tokenizer.Replace(part.Description, tokenState),
                Title       = part.As <TitlePart>().Title,
                Verb        = part.Verb,

                Parameters = part.GetContentPicker("Parameters")
                             .GetPickedContentAs <EndpointParameterPart>()
                             .Select(ToViewModel),

                Returns = part.GetContentPicker("Returns")
                          .GetPickedContentAs <EntityDefinitionPart>()
                          .Select(ToViewModel)
                          .SingleOrDefault(),

                ReturnsAmount = ((EnumerationField)part.Get(typeof(EnumerationField), "ReturnsAmount")).Value,

                Errors = part.GetContentPicker("Errors")
                         .GetPickedContentAs <ErrorResultPart>()
                         .Select(ToViewModel)
            };

            return(viewModel);
        }
예제 #2
0
 private void serializePickerFields(PublishContentContext context, EndpointPart part)
 {
     part.Record.SelectedEntityId     = part.GetContentPicker("Returns").Ids.SingleOrDefault().SerializeId();
     part.Record.SelectedErrorIds     = part.GetContentPicker("Errors").SerializeIds();
     part.Record.SelectedParameterIds = part.GetContentPicker("Parameters").SerializeIds();
 }