Package org.infoglue.cms.entities.management

Examples of org.infoglue.cms.entities.management.ContentTypeDefinitionVO


    }

    public ContentTypeDefinitionVO getContentTypeDefinitionVOWithId(Integer contentTypeDefinitionId, Database db) throws SystemException, Bug
    {
    String key = "" + contentTypeDefinitionId;
    ContentTypeDefinitionVO cachedContentTypeDefinitionVO = (ContentTypeDefinitionVO)CacheController.getCachedObject("contentTypeDefinitionCache", key);
    if(cachedContentTypeDefinitionVO != null)
    {
      return cachedContentTypeDefinitionVO;
    }
View Full Code Here


     
    List allContentTypeDefinitionVOList = this.getContentTypeDefinitionVOList();
    Iterator i = allContentTypeDefinitionVOList.iterator();
    while(i.hasNext())
    {
        ContentTypeDefinitionVO contentTypeDefinitionVO = (ContentTypeDefinitionVO)i.next();
      if(getIsAccessApproved(contentTypeDefinitionVO.getId(), infoGluePrincipal))
          accessableContentTypeDefinitionVOList.add(contentTypeDefinitionVO);
    }
     
    return accessableContentTypeDefinitionVOList;
  }
View Full Code Here

    if(protectContentTypes != null && protectContentTypes.equalsIgnoreCase("true"))
    {
      Iterator i = allContentTypeDefinitionVOList.iterator();
      while(i.hasNext())
      {
          ContentTypeDefinitionVO contentTypeDefinitionVO = (ContentTypeDefinitionVO)i.next();
        if(getIsAccessApproved(contentTypeDefinitionVO.getId(), infoGluePrincipal, db))
            accessableContentTypeDefinitionVOList.add(contentTypeDefinitionVO);
      }
    }
    else
    {
View Full Code Here

   * @throws Bug
   */

  public ContentTypeDefinitionVO getContentTypeDefinitionVOWithName(String name) throws SystemException, Bug
  {
    ContentTypeDefinitionVO contentTypeDefinitionVO = null;

    Database db = CastorDatabaseService.getDatabase();

    try
    {
View Full Code Here

  public ContentTypeDefinitionVO getContentTypeDefinitionVOWithName(String name, Database db) throws SystemException, Bug
  {
    String key = "" + name;
    logger.info("key:" + key);
    ContentTypeDefinitionVO contentTypeDefinitionVO = null;
    Object candidate = CacheController.getCachedObject("contentTypeDefinitionCache", key);
    if(candidate != null)
    {
      if(candidate instanceof NullObject)
        contentTypeDefinitionVO = null;
View Full Code Here

    if(includeInherited && contentTypeDefinitionVO.getParentId() != null && contentTypeDefinitionVO.getParentId() > -1)
    {
      //logger.info("Looking deeper below : " + contentTypeDefinitionVO.getName());
      try
      {
        ContentTypeDefinitionVO parentContentTypeDefinitionVO = getContentTypeDefinitionVOWithId(contentTypeDefinitionVO.getParentId());
        if(parentContentTypeDefinitionVO != null)
        {
          List<AssetKeyDefinition> definedParentAssetKeys = getEnumValues(getEnumerationNodeList(parentContentTypeDefinitionVO.getSchemaValue(), ASSET_KEYS));
          //logger.info("asset keys found in parent " + parentContentTypeDefinitionVO.getName() + ":" + definedParentAssetKeys.size());
          for(AssetKeyDefinition assetKeyDefinition : definedParentAssetKeys)
            assetKeyDefinition.setInherited(true);
         
          definedAssetKeys.addAll(0, definedParentAssetKeys);
View Full Code Here

      if(includeInherited && contentTypeDefinitionVO.getParentId() != null && contentTypeDefinitionVO.getParentId() > -1)
      {
        //logger.info("Looking deeper below : " + contentTypeDefinitionVO.getName());
        try
        {
          ContentTypeDefinitionVO parentContentTypeDefinitionVO = getContentTypeDefinitionVOWithId(contentTypeDefinitionVO.getParentId());
          if(parentContentTypeDefinitionVO != null)
          {
            List<CategoryAttribute> definedParentCategoryKeys = getCategoryInfo(getEnumerationNodeList(parentContentTypeDefinitionVO.getSchemaValue(), CATEGORY_KEYS));
            //logger.info("asset keys found in parent " + parentContentTypeDefinitionVO.getName() + ":" + definedParentCategoryKeys.size());
            for(CategoryAttribute categoryAttribute : definedParentCategoryKeys)
              categoryAttribute.setInherited(true);
           
            definedCategoryKeys.addAll(0, definedParentCategoryKeys);
View Full Code Here

    if(includeInherited && contentTypeDefinitionVO.getParentId() != null && contentTypeDefinitionVO.getParentId() > -1)
    {
      //logger.info("Looking deeper below : " + contentTypeDefinitionVO.getName());
      try
      {
        ContentTypeDefinitionVO parentContentTypeDefinitionVO = getContentTypeDefinitionVOWithId(contentTypeDefinitionVO.getParentId());
        if(parentContentTypeDefinitionVO != null)
        {
          List<ContentTypeAttribute> parentAttributes = getContentTypeAttributes(parentContentTypeDefinitionVO, includeInherited);
          //logger.info("attributes found in parent " + parentContentTypeDefinitionVO.getName() + ":" + parentAttributes.size());
          for(ContentTypeAttribute attribute : parentAttributes)
View Full Code Here

    logger.info("Verifying and updating system content types");
    try
    {
      boolean isModified = false;
     
      ContentTypeDefinitionVO htmlTemplateContentType = ContentTypeDefinitionController.getController().getContentTypeDefinitionVOWithName("HTMLTemplate");
      logger.info("Verifying and updating HTMLTemplate");

      InputSource xmlSource = new InputSource(new StringReader(htmlTemplateContentType.getSchemaValue()));
      DOMParser parser = new DOMParser();
      parser.parse(xmlSource);
      Document document = parser.getDocument();
     
      if(htmlTemplateContentType.getSchemaValue().indexOf("PreTemplate") == -1)
      {
        logger.info("Adding attribute PreTemplate");
        String nodeTemplateAsString = "<xs:schema attributeFormDefault=\"unqualified\" elementFormDefault=\"qualified\" version=\"2.5.2\" xmlns:xi=\"http://www.w3.org/2001/XInclude\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"><xs:element name=\"PreTemplate\" type=\"textarea\"><xs:annotation><xs:appinfo><params><param id=\"title\" inputTypeId=\"0\"><values><value id=\"undefined23\" label=\"Pre processing template\"></value></values></param><param id=\"description\" inputTypeId=\"0\"><values><value id=\"undefined67\" label=\"This template gets invoked before the render phase\"></value></values></param><param id=\"initialData\" inputTypeId=\"0\"><values><value id=\"undefined67\" label=\"undefined83\"></value></values></param><param id=\"class\" inputTypeId=\"0\"><values><value id=\"undefined97\" label=\"normaltextarea\"></value></values></param><param id=\"width\" inputTypeId=\"0\"><values><value id=\"width\" label=\"700\"></value></values></param><param id=\"height\" inputTypeId=\"0\"><values><value id=\"height\" label=\"150\"></value></values></param><param id=\"enableWYSIWYG\" inputTypeId=\"0\"><values><value id=\"enableWYSIWYG\" label=\"false\"></value></values></param><param id=\"WYSIWYGToolbar\" inputTypeId=\"0\"><values><value id=\"WYSIWYGToolbar\" label=\"Default\"></value></values></param><param id=\"WYSIWYGExtraConfig\" inputTypeId=\"0\"><values><value id=\"WYSIWYGExtraConfig\" label=\"\"></value></values></param><param id=\"enableFormEditor\" inputTypeId=\"0\"><values><value id=\"enableFormEditor\" label=\"false\"></value></values></param><param id=\"enableContentRelationEditor\" inputTypeId=\"0\"><values><value id=\"enableContentRelationEditor\" label=\"false\"></value></values></param><param id=\"enableStructureRelationEditor\" inputTypeId=\"0\"><values><value id=\"enableStructureRelationEditor\" label=\"false\"></value></values></param><param id=\"enableComponentPropertiesEditor\" inputTypeId=\"0\"><values><value id=\"enableComponentPropertiesEditor\" label=\"false\"></value></values></param><param id=\"activateExtendedEditorOnLoad\" inputTypeId=\"0\"><values><value id=\"activateExtendedEditorOnLoad\" label=\"false\"></value></values></param></params></xs:appinfo></xs:annotation></xs:element><xs:element name=\"Description\" type=\"textfield\"><xs:annotation><xs:appinfo><params><param id=\"title\" inputTypeId=\"0\"><values><value id=\"undefined72\" label=\"Description\"></value></values></param><param id=\"description\" inputTypeId=\"0\"><values><value id=\"undefined55\" label=\"\"></value></values></param><param id=\"initialData\" inputTypeId=\"0\"><values><value id=\"undefined63\" label=\"\"></value></values></param><param id=\"class\" inputTypeId=\"0\"><values><value id=\"undefined97\" label=\"longtextfield\"></value></values></param></params></xs:appinfo></xs:annotation></xs:element></xs:schema>";
        isModified = addElement(document, "PreTemplate", nodeTemplateAsString, "Template");
      }
     
      if(htmlTemplateContentType.getSchemaValue().indexOf("ComponentLabels") == -1)
      {
        logger.info("Adding attribute PreTemplate");
        String nodeTemplateAsString = "<xs:schema attributeFormDefault=\"unqualified\" elementFormDefault=\"qualified\" version=\"2.5.2\" xmlns:xi=\"http://www.w3.org/2001/XInclude\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"><xs:element name=\"ComponentLabels\" type=\"textarea\"><xs:annotation><xs:appinfo><params><param id=\"title\" inputTypeId=\"0\"><values><value id=\"undefined23\" label=\"ComponentLabels\"></value></values></param><param id=\"description\" inputTypeId=\"0\"><values><value id=\"undefined67\" label=\"Here you can put labels (localized) you wish to use in your Template-code\"></value></values></param><param id=\"initialData\" inputTypeId=\"0\"><values><value id=\"undefined67\" label=\"undefined83\"></value></values></param><param id=\"class\" inputTypeId=\"0\"><values><value id=\"undefined97\" label=\"normaltextarea\"></value></values></param><param id=\"width\" inputTypeId=\"0\"><values><value id=\"width\" label=\"700\"></value></values></param><param id=\"height\" inputTypeId=\"0\"><values><value id=\"height\" label=\"150\"></value></values></param><param id=\"enableWYSIWYG\" inputTypeId=\"0\"><values><value id=\"enableWYSIWYG\" label=\"false\"></value></values></param><param id=\"WYSIWYGToolbar\" inputTypeId=\"0\"><values><value id=\"WYSIWYGToolbar\" label=\"Default\"></value></values></param><param id=\"WYSIWYGExtraConfig\" inputTypeId=\"0\"><values><value id=\"WYSIWYGExtraConfig\" label=\"\"></value></values></param><param id=\"enableFormEditor\" inputTypeId=\"0\"><values><value id=\"enableFormEditor\" label=\"false\"></value></values></param><param id=\"enableContentRelationEditor\" inputTypeId=\"0\"><values><value id=\"enableContentRelationEditor\" label=\"false\"></value></values></param><param id=\"enableStructureRelationEditor\" inputTypeId=\"0\"><values><value id=\"enableStructureRelationEditor\" label=\"false\"></value></values></param><param id=\"enableComponentPropertiesEditor\" inputTypeId=\"0\"><values><value id=\"enableComponentPropertiesEditor\" label=\"false\"></value></values></param><param id=\"activateExtendedEditorOnLoad\" inputTypeId=\"0\"><values><value id=\"activateExtendedEditorOnLoad\" label=\"false\"></value></values></param></params></xs:appinfo></xs:annotation></xs:element><xs:element name=\"Description\" type=\"textfield\"><xs:annotation><xs:appinfo><params><param id=\"title\" inputTypeId=\"0\"><values><value id=\"undefined72\" label=\"Description\"></value></values></param><param id=\"description\" inputTypeId=\"0\"><values><value id=\"undefined55\" label=\"\"></value></values></param><param id=\"initialData\" inputTypeId=\"0\"><values><value id=\"undefined63\" label=\"\"></value></values></param><param id=\"class\" inputTypeId=\"0\"><values><value id=\"undefined97\" label=\"longtextfield\"></value></values></param></params></xs:appinfo></xs:annotation></xs:element></xs:schema>";
        isModified = addElement(document, "ComponentLabels", nodeTemplateAsString, "Template");
      }

      if(htmlTemplateContentType.getSchemaValue().indexOf("ModelClassName") == -1)
      {
        logger.info("Adding attribute ModelClassName");
        String nodeTemplateAsString = "<xs:schema attributeFormDefault=\"unqualified\" elementFormDefault=\"qualified\" version=\"2.5.2\" xmlns:xi=\"http://www.w3.org/2001/XInclude\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"><xs:element name=\"ModelClassName\" type=\"textfield\"><xs:annotation><xs:appinfo><params><param id=\"title\" inputTypeId=\"0\"><values><value id=\"undefined64\" label=\"ModelClassName\"></value></values></param><param id=\"description\" inputTypeId=\"0\"><values><value id=\"undefined64\" label=\"State a classname if you wish to attach a class to the component\"></value></values></param><param id=\"initialData\" inputTypeId=\"0\"><values><value id=\"undefined69\" label=\"\"></value></values></param><param id=\"class\" inputTypeId=\"0\"><values><value id=\"undefined34\" label=\"longtextfield\"></value></values></param><param id=\"widget\" inputTypeId=\"0\"><values><value id=\"undefined95\" label=\"default\"></value></values></param></params></xs:appinfo></xs:annotation></xs:element></xs:schema>";
        isModified = addElement(document, "ModelClassName", nodeTemplateAsString, "Template");
      }
     
      if(isModified)
      {
        StringBuffer sb = new StringBuffer();
        org.infoglue.cms.util.XMLHelper.serializeDom(document.getDocumentElement(), sb);
        htmlTemplateContentType.setSchemaValue(sb.toString());
 
        update(htmlTemplateContentType);
      }
    }
    catch(Exception e)
    {
      logger.error("An error occurred when we tried to upgrade the content type HTMLTemplate:" + e.getMessage(), e);
    }

    try
    {
      boolean isModified = false;
     
      ContentTypeDefinitionVO metaInfoContentType = ContentTypeDefinitionController.getController().getContentTypeDefinitionVOWithName("Meta info");
      logger.info("Verifying and updating Meta info");

      InputSource xmlSource = new InputSource(new StringReader(metaInfoContentType.getSchemaValue()));
      DOMParser parser = new DOMParser();
      parser.parse(xmlSource);
      Document document = parser.getDocument();
     
      if(metaInfoContentType.getSchemaValue().indexOf("NiceURIName") == -1)
      {
        logger.info("Adding attribute NiceURIName");
        String nodeTemplateAsString = "<xs:schema attributeFormDefault=\"unqualified\" elementFormDefault=\"qualified\" version=\"2.5.2\" xmlns:xi=\"http://www.w3.org/2001/XInclude\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"><xs:element name=\"NiceURIName\" type=\"textfield\"><xs:annotation><xs:appinfo><params><param id=\"title\" inputTypeId=\"0\"><values><value id=\"undefined64\" label=\"NiceURIName\"></value></values></param><param id=\"description\" inputTypeId=\"0\"><values><value id=\"undefined64\" label=\"The friendly url-path for the page\"></value></values></param><param id=\"initialData\" inputTypeId=\"0\"><values><value id=\"undefined69\" label=\"\"></value></values></param><param id=\"class\" inputTypeId=\"0\"><values><value id=\"undefined34\" label=\"longtextfield\"></value></values></param><param id=\"widget\" inputTypeId=\"0\"><values><value id=\"undefined95\" label=\"default\"></value></values></param></params></xs:appinfo></xs:annotation></xs:element></xs:schema>";
        isModified = addElement(document, "NiceURIName", nodeTemplateAsString, "ComponentStructure");
      }
     
      if(isModified)
      {
        StringBuffer sb = new StringBuffer();
        org.infoglue.cms.util.XMLHelper.serializeDom(document.getDocumentElement(), sb);
        metaInfoContentType.setSchemaValue(sb.toString());
 
        update(metaInfoContentType);
      }
    }
    catch(Exception e)
View Full Code Here

    }
   
   
    public String doExecute() throws Exception
    {
      ContentTypeDefinitionVO ctd = ContentTypeDefinitionController.getController().getContentTypeDefinitionVOWithName("HTMLTemplate");
      ContentTypeDefinitionVO ctdFolder = ContentTypeDefinitionController.getController().getContentTypeDefinitionVOWithName("Folder");
     
      String[] missingRemoteContentPathArray = this.getRequest().getParameterValues("missingRemoteContentPath");
      logger.info("missingRemoteContentPathArray:" + missingRemoteContentPathArray);
     
      //List deviatingComponents = new ArrayList();
      if(missingRemoteContentPathArray != null)
      {
        for(int i=0; i<missingRemoteContentPathArray.length; i++)
        {
          String missingRemoteContentPath = missingRemoteContentPathArray[i];
          logger.info("missingRemoteContentPath:" + missingRemoteContentPath);
       
          File missingRemoteContentFile = new File(missingRemoteContentPath);

          String templateLanguageCode = null;
          String plainName = missingRemoteContentFile.getName();
          if(plainName.indexOf(".xml") > -1)
          {
            plainName = plainName.substring(0, plainName.indexOf(".xml"));
            logger.info("Plain name:" + plainName);
            if(plainName.lastIndexOf("_") > -1)
            {
              templateLanguageCode = plainName.substring(plainName.lastIndexOf("_") + 1);
              plainName = plainName.substring(0, plainName.lastIndexOf("_"));
              logger.info("templateLanguageCode:" + templateLanguageCode);
              logger.info("Plain name:" + plainName);
            }
          }

          String repositoryName = getRepositoryNameFromCheckoutFile(missingRemoteContentFile);
          logger.info("repositoryName:" + repositoryName);
          logger.info("templateLanguageCode:" + templateLanguageCode);
        RepositoryVO repositoryVO = RepositoryController.getController().getRepositoryVOWithName(repositoryName);
        LanguageVO masterLanguageVO = LanguageController.getController().getLanguageVOWithCode(templateLanguageCode);
       
       
        ContentVO localParentContentVO = null;
        if(repositoryVO == null)
        {
          RepositoryVO newRepositoryVO = new RepositoryVO();
          newRepositoryVO.setName(repositoryName);
          newRepositoryVO.setDnsName("undefined");
          newRepositoryVO.setDescription("Autogenerated during cvs sync");

          repositoryVO = RepositoryController.getController().create(newRepositoryVO);
          if(masterLanguageVO == null)
            masterLanguageVO = (LanguageVO)LanguageController.getController().getLanguageVOList().get(0);
         
          RepositoryLanguageController.getController().createRepositoryLanguage(repositoryVO.getId(), masterLanguageVO.getId(), 0);
          localParentContentVO = ContentController.getContentController().getRootContentVO(repositoryVO.getId(), getInfoGluePrincipal().getName(), true);
          this.repositoryCreated = true;
        }
        else
        {
          logger.info("Found repository:" + repositoryVO.getName());
          localParentContentVO = ContentController.getContentController().getRootContentVO(repositoryVO.getId(), getInfoGluePrincipal().getName(), true);
          masterLanguageVO = LanguageController.getController().getMasterLanguage(repositoryVO.getId());
        }
       
        String contentPath = getContentPathAsListFromCheckoutFile(missingRemoteContentFile);
        logger.info("contentPath:" + contentPath);
       
        ContentVO contentVO = ContentController.getContentController().getContentVOWithPath(repositoryVO.getId(), contentPath, true, getInfoGluePrincipal());
          if(contentVO != null)
          {
            if(missingRemoteContentFile.isFile())
            {
              ContentVO newContentVO = new ContentVO();
              newContentVO.setCreatorName(getInfoGluePrincipal().getName());
              newContentVO.setIsBranch(false);
              newContentVO.setName(plainName);
              ContentVO newlyCreatedContentVO = ContentController.getContentController().create(contentVO.getId(), ctd.getContentTypeDefinitionId(), contentVO.getRepositoryId(), newContentVO);
             
              logger.info("Created content:" + newlyCreatedContentVO.getName());
 
              String fileContent = "";
              if(missingRemoteContentFile.exists())
                fileContent = FileHelper.getFileAsString(missingRemoteContentFile, "iso-8859-1");
           
              ContentVersionVO newContentVersionVO = new ContentVersionVO();
              newContentVersionVO.setVersionComment("Checked out from version control system (tag: " + tagName + ")");
              newContentVersionVO.setVersionModifier(getInfoGluePrincipal().getName());
              newContentVersionVO.setVersionValue(fileContent);
              ContentVersionController.getContentVersionController().create(newlyCreatedContentVO.getId(), masterLanguageVO.getId(), newContentVersionVO, null);
            }
            else
            {
              ContentVO newContentVO = new ContentVO();
              newContentVO.setCreatorName(getInfoGluePrincipal().getName());
              newContentVO.setIsBranch(true);
              newContentVO.setName(plainName);
              ContentVO newlyCreatedContentVO = ContentController.getContentController().create(contentVO.getId(), ctdFolder.getContentTypeDefinitionId(), contentVO.getRepositoryId(), newContentVO);
             
              logger.info("Created content:" + newlyCreatedContentVO.getName());
            }
        }
        }
View Full Code Here

TOP

Related Classes of org.infoglue.cms.entities.management.ContentTypeDefinitionVO

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.