Search in sources :

Example 6 with PageModel

use of com.agiletec.aps.system.services.pagemodel.PageModel in project entando-core by entando.

the class ApiPageModelInterface method getApiResourceUrl.

@Override
public String getApiResourceUrl(Object object, String applicationBaseUrl, String langCode, MediaType mediaType) {
    if (!(object instanceof PageModel) || null == applicationBaseUrl || null == langCode) {
        return null;
    }
    PageModel pageModel = (PageModel) object;
    StringBuilder stringBuilder = new StringBuilder(applicationBaseUrl);
    // ?code=").append(pageModel.getCode());
    stringBuilder.append("api/rs/").append(langCode).append("/core/pageModel");
    if (null == mediaType || mediaType.equals(MediaType.APPLICATION_XML_TYPE)) {
        stringBuilder.append(".xml");
    } else {
        stringBuilder.append(".json");
    }
    stringBuilder.append("?code=").append(pageModel.getCode());
    return stringBuilder.toString();
}
Also used : PageModel(com.agiletec.aps.system.services.pagemodel.PageModel)

Example 7 with PageModel

use of com.agiletec.aps.system.services.pagemodel.PageModel in project entando-core by entando.

the class ApiPageModelInterface method getPageModels.

public List<LinkedListItem> getPageModels(Properties properties) throws Throwable {
    List<LinkedListItem> list = new ArrayList<LinkedListItem>();
    try {
        Collection<PageModel> pageModels = this.getPageModelManager().getPageModels();
        if (null != pageModels) {
            Iterator<PageModel> iter = pageModels.iterator();
            while (iter.hasNext()) {
                PageModel pageModel = iter.next();
                String url = this.getApiResourceUrl(pageModel, properties.getProperty(SystemConstants.API_APPLICATION_BASE_URL_PARAMETER), properties.getProperty(SystemConstants.API_LANG_CODE_PARAMETER), (MediaType) properties.get(SystemConstants.API_PRODUCES_MEDIA_TYPE_PARAMETER));
                LinkedListItem item = new LinkedListItem();
                item.setCode(pageModel.getCode());
                item.setUrl(url);
                list.add(item);
            }
        }
    } catch (Throwable t) {
        _logger.error("Error extracting list of models", t);
        throw t;
    }
    return list;
}
Also used : ArrayList(java.util.ArrayList) LinkedListItem(org.entando.entando.aps.system.services.api.model.LinkedListItem) PageModel(com.agiletec.aps.system.services.pagemodel.PageModel)

Example 8 with PageModel

use of com.agiletec.aps.system.services.pagemodel.PageModel in project entando-core by entando.

the class ApiPageModelInterface method getPageModel.

public PageModel getPageModel(Properties properties) throws ApiException, Throwable {
    String code = properties.getProperty("code");
    PageModel pageModel = null;
    try {
        pageModel = this.getPageModelManager().getPageModel(code);
        if (null == pageModel) {
            throw new ApiException(IApiErrorCodes.API_VALIDATION_ERROR, "PageModel with code '" + code + "' does not exist", Response.Status.CONFLICT);
        }
    } catch (ApiException ae) {
        throw ae;
    } catch (Throwable t) {
        _logger.error("Error creating page model - code '{}'", code, t);
        throw t;
    }
    return pageModel;
}
Also used : PageModel(com.agiletec.aps.system.services.pagemodel.PageModel) ApiException(org.entando.entando.aps.system.services.api.model.ApiException)

Example 9 with PageModel

use of com.agiletec.aps.system.services.pagemodel.PageModel in project entando-core by entando.

the class ContentMapperCacheWrapperTest method createMockPageModel.

private PageModel createMockPageModel() {
    PageModel model = new PageModel();
    model.setCode("temp_model");
    Frame frame = new Frame();
    frame.setMainFrame(true);
    frame.setDescription("Main Frame");
    frame.setPos(0);
    Frame[] configuration = new Frame[] { frame };
    model.setConfiguration(configuration);
    model.setMainFrame(0);
    return model;
}
Also used : Frame(com.agiletec.aps.system.services.pagemodel.Frame) PageModel(com.agiletec.aps.system.services.pagemodel.PageModel)

Example 10 with PageModel

use of com.agiletec.aps.system.services.pagemodel.PageModel in project entando-core by entando.

the class PageTestUtil method createPageMetadata.

public static PageMetadata createPageMetadata(String pageModelCode, boolean showable, String defaultTitle, String mimeType, String charset, boolean useExtraTitles, Set<String> extraGroups, Date updatedAt) {
    PageMetadata metadata = new PageMetadata();
    PageModel pageModel = new PageModel();
    pageModel.setCode(pageModelCode);
    metadata.setModel(pageModel);
    metadata.setShowable(showable);
    metadata.setTitle("it", defaultTitle);
    if (extraGroups != null) {
        metadata.setExtraGroups(extraGroups);
    }
    metadata.setMimeType(mimeType);
    metadata.setCharset(charset);
    metadata.setUseExtraTitles(useExtraTitles);
    metadata.setExtraGroups(extraGroups);
    metadata.setUpdatedAt(updatedAt);
    return metadata;
}
Also used : PageModel(com.agiletec.aps.system.services.pagemodel.PageModel)

Aggregations

PageModel (com.agiletec.aps.system.services.pagemodel.PageModel)47 IPage (com.agiletec.aps.system.services.page.IPage)13 ApsSystemException (com.agiletec.aps.system.exception.ApsSystemException)11 Page (com.agiletec.aps.system.services.page.Page)10 Widget (com.agiletec.aps.system.services.page.Widget)10 ApsProperties (com.agiletec.aps.util.ApsProperties)10 PageMetadata (com.agiletec.aps.system.services.page.PageMetadata)9 ArrayList (java.util.ArrayList)8 List (java.util.List)8 RestServerError (org.entando.entando.aps.system.exception.RestServerError)7 BeanPropertyBindingResult (org.springframework.validation.BeanPropertyBindingResult)7 ValidationConflictException (org.entando.entando.web.common.exceptions.ValidationConflictException)6 Frame (com.agiletec.aps.system.services.pagemodel.Frame)5 Map (java.util.Map)5 RestRourceNotFoundException (org.entando.entando.aps.system.exception.RestRourceNotFoundException)5 WidgetConfigurationDto (org.entando.entando.aps.system.services.page.model.WidgetConfigurationDto)5 WidgetConfigurationRequest (org.entando.entando.web.page.model.WidgetConfigurationRequest)5 IPageModelManager (com.agiletec.aps.system.services.pagemodel.IPageModelManager)4 PageModelDOM (com.agiletec.aps.system.services.pagemodel.PageModelDOM)4 IDtoBuilder (org.entando.entando.aps.system.services.IDtoBuilder)4