예제 #1
0
        /// <summary>
        /// Funzione per il reperimento della lista di modelli definiti tramite lo strumento
        /// di amministrazione di M/Text CS
        /// </summary>
        /// <returns>Lista dei databindings definiti dal workbench M/Text CS</returns>
        public List <ModelInfo> GetModels()
        {
            List <ModelInfo> models = new List <ModelInfo>();

            // Definizione request
            getDocumentTypes request = new getDocumentTypes();

            request.arg0 = new configurationProperty[0];

            // Invio richiesta e analisi risultati
            String[] documentTypes;

            try
            {
                documentTypes = this.integrationAdapterService.getDocumentTypes(request);

                // Conversione oggetti
                foreach (String model in documentTypes)
                {
                    models.Add(MTextHelper.DecodeBindingInformation(model));
                }
            }
            catch (Exception e)
            {
                throw new DataBindingsListRetriveException(e);
            }

            return(models);
        }
예제 #2
0
        /// <summary>
        /// Funzione per la creazione di un XML che può essere utilizzato durante la definizione
        /// del template in M/Text
        /// </summary>
        /// <param name="templateName">Nome del template per cui generare un esempio di data source</param>
        /// <param name="mTextFields">Lista di coppie Etichetta - Valore con le informazioni su nome e valore assunto dai campi profilati M/Text</param>
        /// <returns></returns>
        public Byte[] GetXmlExample(String templateName, List <LabelValuePair> mTextFields)
        {
            Byte[] dataSourceExample = null;

            try
            {
                dataSourceExample = MTextHelper.GetDataSource(templateName, mTextFields);
            }
            catch (Exception e)
            {
                this.logger.Debug(
                    String.Format(
                        "Errore durante la generazione del data source di esempio per la tipologia {0}",
                        templateName),
                    e);
            }

            return(dataSourceExample);
        }
예제 #3
0
        /// <summary>
        /// Funzione per la creazione di un documento
        /// </summary>
        /// <param name="fullQualifiedName">Nome da assegnare al documento</param>
        /// <param name="mTextFieldsInfo">Lista di coppie Etichetta - Valore da utilizzare per la creazione del documento M/Text</param>
        /// <param name="databinding">Modello da utilizzare</param>
        /// <returns>Id del documento creato</returns>
        public String CreateDocument(String fullQualifiedName, List <LabelValuePair> mTextFieldsInfo, String databinding)
        {
            // Id del documento da restituire
            String documentID = String.Empty;

            String bindingName = Path.GetFileNameWithoutExtension(databinding);

            // Generazione del data source a partire dalla lista di campi profilati
            Byte[] dataSource = MTextHelper.GetDataSource(bindingName, mTextFieldsInfo);

            // Creazione argomento con le informazioni sul datasource
            namedData[] namedData = new namedData[]
            {
                new namedData()
                {
                    data = dataSource,
                    name = bindingName
                }
            };

            // Invocazione del servizio per la creazione del documento e
            // restituzione dell'id del documento creato
            try
            {
                createDocumentFromBindingResponse response = this.integrationAdapterService.createDocumentFromBinding(
                    new createDocumentFromBinding()
                {
                    arg0 = fullQualifiedName,
                    arg1 = databinding,
                    arg2 = namedData,
                    arg3 = new configurationProperty[0]
                });

                documentID = response.@return;
            }
            catch (Exception e)
            {
                throw new DocumentCreationException(e);
            }

            return(documentID);
        }