Projects >> astroboa >>d34d1e55b91bc229f115a2fbbf8957bce63f0642

Chunk
Conflicting content
	 * All associations to this space will be deleted as well.
	 * 
	 * @param spaceId Space's id to be deleted.
<<<<<<< HEAD
	 * @return true if space has been successfully deleted, false otherwise
	 *  
=======
	 * @return true if space has been successfully deleted, false if or no space with the provided id or name is found.
	 * 
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
	 */
	boolean deleteSpace(String spaceId);
	
Solution content
	 * All associations to this space will be deleted as well.
	 * 
	 * @param spaceId Space's id to be deleted.
	 * @return true if space has been successfully deleted, false if no space with the provided id or name is found.
	 * 
	 */
	boolean deleteSpace(String spaceId);
	
File
SpaceService.java
Developer's decision
Manual
Kind of conflict
Comment
Chunk
Conflicting content
	 * @param spaceId Space's id to be deleted.
	 * @param authenticationToken A token provided during client login ({@link RepositoryServiceSecure#login(String, AstroboaCredentials, String)})
	 *  to an Astroboa repository.
<<<<<<< HEAD
	 * @return true if space has been successfully deleted, false otherwise
=======
	 * @return true if space has been successfully deleted, false if or no space with the provided id or name is found.
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
	 *  
	 */
	boolean deleteSpace(String spaceId, String authenticationToken);
Solution content
	 * @param spaceId Space's id to be deleted.
	 * @param authenticationToken A token provided during client login ({@link RepositoryServiceSecure#login(String, AstroboaCredentials, String)})
	 *  to an Astroboa repository.
	 * @return true if space has been successfully deleted, false if no space with the provided id or name is found.
	 *  
	 */
	boolean deleteSpace(String spaceId, String authenticationToken);
File
SpaceServiceSecure.java
Developer's decision
Manual
Kind of conflict
Comment
Chunk
Conflicting content
		List availablePropertyPrototypes = definitionService.getAvailableAspectDefinitionsSortedByLocale(locale);

<<<<<<< HEAD
		if (CollectionUtils.isNotEmpty(availablePropertyPrototypes)){
			for (ComplexCmsPropertyDefinition propertyPrototype : availablePropertyPrototypes){
				if (!propertyPrototype.isSystemTypeDefinition() && !propertyPrototype.isObsolete() && isUserViewablePropertyPrototype(propertyPrototype.getName())){
					String localizedLabelForLocale = propertyPrototype.getDisplayName().getLocalizedLabelForLocale(locale);
=======
		if (CollectionUtils.isNotEmpty(availabelAspectDefinitions)){
			for (ComplexCmsPropertyDefinition aspectDefinition : availabelAspectDefinitions){
				if ( !aspectDefinition.isObsolete()){
					String localizedLabelForLocale = aspectDefinition.getDisplayName().getLocalizedLabelForLocale(locale);
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
					if (StringUtils.isBlank(localizedLabelForLocale)){
						localizedLabelForLocale = propertyPrototype.getName(); 
					}
Solution content
		List availablePropertyPrototypes = definitionService.getAvailableAspectDefinitionsSortedByLocale(locale);

		if (CollectionUtils.isNotEmpty(availablePropertyPrototypes)){
			for (ComplexCmsPropertyDefinition propertyPrototype : availablePropertyPrototypes){
				if (!propertyPrototype.isObsolete() && isUserViewablePropertyPrototype(propertyPrototype.getName())){
					String localizedLabelForLocale = propertyPrototype.getDisplayName().getLocalizedLabelForLocale(locale);
					if (StringUtils.isBlank(localizedLabelForLocale)){
						localizedLabelForLocale = propertyPrototype.getName(); 
					}
File
ComplexCmsPropertyEdit.java
Developer's decision
Manual
Kind of conflict
For statement
If statement
Method invocation
Variable
Chunk
Conflicting content
			removeSpaceNode(spaceNode, context);

			session.save();
<<<<<<< HEAD
=======
			
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
			return true;
		}
		catch(CmsException e){
Solution content
			removeSpaceNode(spaceNode, context);

			session.save();
			return true;
		}
		catch(CmsException e){
File
SpaceDao.java
Developer's decision
Version 1
Kind of conflict
Blank
Chunk
Conflicting content
		}
				}
			}
	}

<<<<<<< HEAD
	private void createRootElement(Serializer serializer, String rootEntityName, ResourceRepresentationType  resourceRepresentationType, boolean createObjectTypeNamespaces)	throws Exception {
=======
	private void serializeObjectsAndTheirDependencies(ContentObjectCriteria contentObjectCriteria, Serializer serializer,Session session, SerializationReport serializationReport) throws Exception {
		
		serializer.setDefinitionServiceDao(definitionServiceDao);
		
		CmsQueryResult cmsQueryResult = cmsQueryHandler.getNodesFromXPathQuery(session, contentObjectCriteria, false);
		
		CmsScoreNodeIterator nodeIterator = new CmsScoreNodeIteratorUsingJcrRangeIterator(cmsQueryResult.getRowIterator());
		
		if (contentObjectCriteria.getLimit() != 0){ // 0 denotes that no resource will be serialized
			
			Map repositoryUserNodes = new HashMap();
			Map taxonomyNodes = new HashMap();
			Map objectNodes = new HashMap();
			
			//We use a list because we serialize all topic hierarchy up to its taxonomy
			//Therefore we must serialize all root topics and then all first level topics etc. 
			Map> topicNodesStack = new TreeMap>();
			
			while (nodeIterator.hasNext()){

				Node objectNode = retrieveNextObjectNode(contentObjectCriteria,nodeIterator);

				findObjectDependencies(objectNode, repositoryUserNodes, taxonomyNodes, topicNodesStack,objectNodes, session);
				
				objectNodes.put(cmsRepositoryEntityUtils.getCmsIdentifier(objectNode), objectNode);
			}
			
			//Set total numbers first and then serialize
			if (!repositoryUserNodes.isEmpty()){
				((SerializationReportImpl)serializationReport).setTotalNumberOfRepositoryUsersToBeSerialized(repositoryUserNodes.size());
				((SerializationReportImpl)serializationReport).setTotalNumberOfTaxonomiesToBeSerialized(repositoryUserNodes.size()); //Each user has a folksonomy
				((SerializationReportImpl)serializationReport).setTotalNumberOfSpacesToBeSerialized(repositoryUserNodes.size()); //Each user has one root private space
			}
			
			if (!taxonomyNodes.isEmpty()){
				//If at least one repositoryUser is serialized then at least one folksonomy is serialized as well
				((SerializationReportImpl)serializationReport).setTotalNumberOfTaxonomiesToBeSerialized(
						serializationReport.getTotalNumberOfTaxonomies()+taxonomyNodes.size());
			}
			
			if (!topicNodesStack.isEmpty()){
				TopicCounterClosure topicCounter = new TopicCounterClosure();
				
				CollectionUtils.forAllDo(topicNodesStack.values(), topicCounter);
				
				((SerializationReportImpl)serializationReport).setTotalNumberOfTopicsToBeSerialized(topicCounter.getTotalNumberOfTopicsToSerialize());
			}
			
			if (!objectNodes.isEmpty()){
				((SerializationReportImpl)serializationReport).setTotalNumberOfObjectsToBeSerialized(objectNodes.size());
			}

			
			//Serialize all nodes in THIS ORDER
			if (!repositoryUserNodes.isEmpty()){
				serializeNodesRepresentingRepositoryUsers(repositoryUserNodes, serializer, session);
			}
			
			if (!taxonomyNodes.isEmpty()){
				serializeNodesRepresentingTaxonomies(taxonomyNodes, serializer, session);
			}
			
			if (!topicNodesStack.isEmpty()){
				serializeNodesRepresentingTopics(topicNodesStack, serializer, session);
			}
			
			if (!objectNodes.isEmpty()){
				serializeNodesRepresentingObjects(objectNodes, serializer, session);
			}
		}
	}
	
	
	private void serializeNodesRepresentingTaxonomies(
			Map taxonomyNodes, Serializer serializer,
			Session session) throws Exception {
		
		serializer.openEntityWithNoAttributes(CmsConstants.TAXONOMIES_ELEMENT_NAME);
		
		for (Node taxonomyNode : taxonomyNodes.values()){
			serializer.serializeTaxonomyNode(taxonomyNode, FetchLevel.ENTITY, false, false);
		}
		
					values = property.getValues();
		}
		serializer.closeEntity(CmsConstants.TAXONOMIES_ELEMENT_NAME);

		
	}
	private void serializeNodesRepresentingObjects(
			Map objectNodes, Serializer serializer,
			Session session) throws Exception {

		serializer.openEntityWithNoAttributes(CmsConstants.OBJECTS_ELEMENT_NAME);
		
		for (Node objectNode : objectNodes.values()){
			serializer.serializeContentObjectNode(objectNode, false);
		}
		
		serializer.closeEntity(CmsConstants.OBJECTS_ELEMENT_NAME);

		
	}
	private void serializeNodesRepresentingTopics(Map> topicNodes,
			Serializer serializer, Session session) throws Exception {

		serializer.openEntityWithNoAttributes(CmsConstants.TOPICS_ELEMENT_NAME);
		
		Set keySet = topicNodes.keySet();
		for (Integer level : keySet){
			
			Map topicNodesForLevel = topicNodes.get(level);
			
			for (Node topicNode : topicNodesForLevel.values()){
				serializer.serializeTopicNode(topicNode, FetchLevel.ENTITY, true, false, false, false);
		
		serializer.closeEntity(CmsConstants.TOPICS_ELEMENT_NAME);

		
	}
	private void serializeNodesRepresentingRepositoryUsers(
			Map repositoryUserNodes, Serializer serializer,
			Session session) throws Exception {
		
		serializer.openEntityWithNoAttributes(CmsConstants.REPOSITORY_USERS_ELEMENT_NAME);
		
		for (Node repositoryUserNode : repositoryUserNodes.values()){
			serializer.serializeNode(repositoryUserNode, false, FetchLevel.ENTITY, false, false);
		}
		
		serializer.closeEntity(CmsConstants.REPOSITORY_USERS_ELEMENT_NAME);
		
	}
	
	/*
	 * Try to identify property values which are reference to other nodes
	 * without the use of a definition.
	 * 
	 * To do this, search only the properties of type STRING
	 * and check if their value is a UUID 
	 */
	private void findObjectDependencies(Node node,
			Map repositoryUserNodes, Map taxonomyNodes,
			Map> topicNodes, Map objectNodes, Session session) throws RepositoryException {
		
		findDependenciesInProperties(node, repositoryUserNodes, taxonomyNodes, topicNodes, objectNodes, session);
		
		NodeIterator childNodes = node.getNodes();
		
		if (childNodes != null && childNodes.getSize() > 0){
			while (childNodes.hasNext()){
				findObjectDependencies(childNodes.nextNode(), repositoryUserNodes, taxonomyNodes, topicNodes, objectNodes, session);
			}
		}
		
	}
	private void findDependenciesInProperties(Node node,
			Map repositoryUserNodes,  Map taxonomyNodes,
			Map> topicNodes, Map objectNodes,
			Session session) throws RepositoryException, ValueFormatException {
		
		
		PropertyIterator properties = node.getProperties();
		
		if (properties != null && properties.getSize() > 0){
			while (properties.hasNext()){
				
				Property property = properties.nextProperty();
				
				if (property.getType() != PropertyType.STRING){
					continue;
				}
				
				String propertyName = property.getName();
				
				if (propertyName.startsWith(JcrNamespaceConstants.JCR_PREFIX+":") ||
					propertyName.startsWith(JcrNamespaceConstants.MIX_PREFIX+":") ||
					propertyName.startsWith(JcrNamespaceConstants.NT_PREFIX+":")){
					continue;
				}
				
				Value[] values = null;
				if (property.getDefinition().isMultiple()){
				else{
					values = new Value[]{property.getValue()};
				}
				
				for (Value value : values){
					String valueAsString = value.getString();
					
					if (CmsConstants.UUIDPattern.matcher(valueAsString).matches()){
						
						Node referencedNode = cmsRepositoryEntityUtils.retrieveUniqueNodeForCmsRepositoryEntityId(session, valueAsString);
						
						if (referencedNode != null){
							//Determine node type
							if (referencedNode.isNodeType(CmsBuiltInItem.StructuredContentObject.getJcrName()) && ! objectNodes.containsKey(valueAsString)){
								objectNodes.put(valueAsString, referencedNode);
							}
							else if (referencedNode.isNodeType(CmsBuiltInItem.Topic.getJcrName())){
								
								List topicHierarchy = new ArrayList();
								
								Node topicNode = referencedNode;
								
								while (topicNode != null && topicNode.isNodeType(CmsBuiltInItem.Topic.getJcrName())){
									topicHierarchy.add(topicNode);
									topicNode = topicNode.getParent();
								}
								
								//Normally the last node always corresponds to a taxonomy
								if (topicNode.isNodeType(CmsBuiltInItem.Taxonomy.getJcrName())){
									taxonomyNodes.put(cmsRepositoryEntityUtils.getCmsIdentifier(topicNode), topicNode);
								}
								
								//Reverse list so that root topic is the first
								Collections.reverse(topicHierarchy);
								for (int i=0; i());
									}
									
									topicNodes.get(i).put(valueAsString, topicHierarchyNode);
									
								}
								
							}
							else if (referencedNode.isNodeType(CmsBuiltInItem.RepositoryUser.getJcrName()) && ! repositoryUserNodes.containsKey(valueAsString)){
								repositoryUserNodes.put(valueAsString, referencedNode);
							}
						}
						
					}
				}
				
			}
		}
	}
	
	
	private Node retrieveNextObjectNode(
			ContentObjectCriteria contentObjectCriteria,
			CmsScoreNodeIterator nodeIterator) throws RepositoryException,
			ItemNotFoundException, AccessDeniedException {
		Node nextNode = nodeIterator.nextCmsScoreNode().getJcrNode();

		//Special cases.
		//In cases of complex queries, primary nodes (contentObject, topic, space, taxonomy, repositoryUser)
		//may not be returned. In these case we must locate the primary node to serialize
		if (CmsBuiltInItem.Localization.getJcrName().equals(nextNode.getName())){
			//Node represents Localization node of a Topic or a Space
			//Serialize its parent
			nextNode = nextNode.getParent();
		}
		else if (! nextNode.isNodeType(CmsBuiltInItem.StructuredContentObject.getJcrName())){
			nextNode = contentObjectRenderer.retrieveContentObjectNodeToBeUsedForRendering(nextNode, contentObjectCriteria.getRenderProperties());
		}
		return nextNode;
	}
	
	
	
	private void createRootElement(Serializer serializer, String rootEntityName, ResourceRepresentationType  resourceRepresentationType, boolean createContentTypeNamespaces)	throws Exception {
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
		
		AttributesImpl atts = generateRootElementAttributes(serializer,rootEntityName, resourceRepresentationType, createObjectTypeNamespaces);
		
Solution content
				
		}
	}

	private void serializeObjectsAndTheirDependencies(ContentObjectCriteria contentObjectCriteria, Serializer serializer,Session session, SerializationReport serializationReport) throws Exception {
		
		serializer.setDefinitionServiceDao(definitionServiceDao);
		
		CmsQueryResult cmsQueryResult = cmsQueryHandler.getNodesFromXPathQuery(session, contentObjectCriteria, false);
		
		CmsScoreNodeIterator nodeIterator = new CmsScoreNodeIteratorUsingJcrRangeIterator(cmsQueryResult.getRowIterator());
		
		if (contentObjectCriteria.getLimit() != 0){ // 0 denotes that no resource will be serialized
			
			Map repositoryUserNodes = new HashMap();
			Map taxonomyNodes = new HashMap();
			Map objectNodes = new HashMap();
			
			//We use a list because we serialize all topic hierarchy up to its taxonomy
			//Therefore we must serialize all root topics and then all first level topics etc. 
			Map> topicNodesStack = new TreeMap>();
			
			while (nodeIterator.hasNext()){

				Node objectNode = retrieveNextObjectNode(contentObjectCriteria,nodeIterator);

				findObjectDependencies(objectNode, repositoryUserNodes, taxonomyNodes, topicNodesStack,objectNodes, session);
				
				objectNodes.put(cmsRepositoryEntityUtils.getCmsIdentifier(objectNode), objectNode);
			}
			
			//Set total numbers first and then serialize
			if (!repositoryUserNodes.isEmpty()){
				((SerializationReportImpl)serializationReport).setTotalNumberOfRepositoryUsersToBeSerialized(repositoryUserNodes.size());
				((SerializationReportImpl)serializationReport).setTotalNumberOfTaxonomiesToBeSerialized(repositoryUserNodes.size()); //Each user has a folksonomy
				((SerializationReportImpl)serializationReport).setTotalNumberOfSpacesToBeSerialized(repositoryUserNodes.size()); //Each user has one root private space
			}
			
			if (!taxonomyNodes.isEmpty()){
				//If at least one repositoryUser is serialized then at least one folksonomy is serialized as well
				((SerializationReportImpl)serializationReport).setTotalNumberOfTaxonomiesToBeSerialized(
						serializationReport.getTotalNumberOfTaxonomies()+taxonomyNodes.size());
			}
			
			if (!topicNodesStack.isEmpty()){
				TopicCounterClosure topicCounter = new TopicCounterClosure();
				
				CollectionUtils.forAllDo(topicNodesStack.values(), topicCounter);
				
				((SerializationReportImpl)serializationReport).setTotalNumberOfTopicsToBeSerialized(topicCounter.getTotalNumberOfTopicsToSerialize());
			}
			
			if (!objectNodes.isEmpty()){
				((SerializationReportImpl)serializationReport).setTotalNumberOfObjectsToBeSerialized(objectNodes.size());
			}

			
			//Serialize all nodes in THIS ORDER
			if (!repositoryUserNodes.isEmpty()){
				serializeNodesRepresentingRepositoryUsers(repositoryUserNodes, serializer, session);
			}
			
			if (!taxonomyNodes.isEmpty()){
				serializeNodesRepresentingTaxonomies(taxonomyNodes, serializer, session);
			}
			
			if (!topicNodesStack.isEmpty()){
				serializeNodesRepresentingTopics(topicNodesStack, serializer, session);
			}
			
				
	}
	
				Property property = properties.nextProperty();
			if (!objectNodes.isEmpty()){
				serializeNodesRepresentingObjects(objectNodes, serializer, session);
			}
		}
	}
	
	
	private void serializeNodesRepresentingTaxonomies(
			Map taxonomyNodes, Serializer serializer,
			Session session) throws Exception {
		
		serializer.openEntityWithNoAttributes(CmsConstants.TAXONOMIES_ELEMENT_NAME);
		
		for (Node taxonomyNode : taxonomyNodes.values()){
			serializer.serializeTaxonomyNode(taxonomyNode, FetchLevel.ENTITY, false, false);
		}
		
		serializer.closeEntity(CmsConstants.TAXONOMIES_ELEMENT_NAME);

		
	}
	private void serializeNodesRepresentingObjects(
			Map objectNodes, Serializer serializer,
			Session session) throws Exception {

		serializer.openEntityWithNoAttributes(CmsConstants.OBJECTS_ELEMENT_NAME);
		
		for (Node objectNode : objectNodes.values()){
			serializer.serializeContentObjectNode(objectNode, false);
		}
		
		serializer.closeEntity(CmsConstants.OBJECTS_ELEMENT_NAME);

		
	}
	private void serializeNodesRepresentingTopics(Map> topicNodes,
			Serializer serializer, Session session) throws Exception {

		serializer.openEntityWithNoAttributes(CmsConstants.TOPICS_ELEMENT_NAME);
		
		Set keySet = topicNodes.keySet();
		for (Integer level : keySet){
			
			Map topicNodesForLevel = topicNodes.get(level);
			
			for (Node topicNode : topicNodesForLevel.values()){
				serializer.serializeTopicNode(topicNode, FetchLevel.ENTITY, true, false, false, false);
			}
		}
		
		serializer.closeEntity(CmsConstants.TOPICS_ELEMENT_NAME);

		
	}
	private void serializeNodesRepresentingRepositoryUsers(
			Map repositoryUserNodes, Serializer serializer,
			Session session) throws Exception {
		
		serializer.openEntityWithNoAttributes(CmsConstants.REPOSITORY_USERS_ELEMENT_NAME);
		
		for (Node repositoryUserNode : repositoryUserNodes.values()){
			serializer.serializeNode(repositoryUserNode, false, FetchLevel.ENTITY, false, false);
		}
		
		serializer.closeEntity(CmsConstants.REPOSITORY_USERS_ELEMENT_NAME);
		
	/*
	 * Try to identify property values which are reference to other nodes
	 * without the use of a definition.
	 * 
	 * To do this, search only the properties of type STRING
	 * and check if their value is a UUID 
	 */
	private void findObjectDependencies(Node node,
			Map repositoryUserNodes, Map taxonomyNodes,
			Map> topicNodes, Map objectNodes, Session session) throws RepositoryException {
		
		findDependenciesInProperties(node, repositoryUserNodes, taxonomyNodes, topicNodes, objectNodes, session);
		
		NodeIterator childNodes = node.getNodes();
		
		if (childNodes != null && childNodes.getSize() > 0){
			while (childNodes.hasNext()){
				findObjectDependencies(childNodes.nextNode(), repositoryUserNodes, taxonomyNodes, topicNodes, objectNodes, session);
			}
		}
		
	}
	private void findDependenciesInProperties(Node node,
			Map repositoryUserNodes,  Map taxonomyNodes,
			Map> topicNodes, Map objectNodes,
			Session session) throws RepositoryException, ValueFormatException {
		
		
		PropertyIterator properties = node.getProperties();
		
		if (properties != null && properties.getSize() > 0){
			while (properties.hasNext()){
				if (property.getType() != PropertyType.STRING){
					continue;
				}
				
				String propertyName = property.getName();
				
				if (propertyName.startsWith(JcrNamespaceConstants.JCR_PREFIX+":") ||
					propertyName.startsWith(JcrNamespaceConstants.MIX_PREFIX+":") ||
					propertyName.startsWith(JcrNamespaceConstants.NT_PREFIX+":")){
					continue;
				}
				
				Value[] values = null;
				if (property.getDefinition().isMultiple()){
					values = property.getValues();
				}
				else{
					values = new Value[]{property.getValue()};
				}
				
				for (Value value : values){
					String valueAsString = value.getString();
					
					if (CmsConstants.UUIDPattern.matcher(valueAsString).matches()){
						
						Node referencedNode = cmsRepositoryEntityUtils.retrieveUniqueNodeForCmsRepositoryEntityId(session, valueAsString);
						
						if (referencedNode != null){
							//Determine node type
							if (referencedNode.isNodeType(CmsBuiltInItem.StructuredContentObject.getJcrName()) && ! objectNodes.containsKey(valueAsString)){
								objectNodes.put(valueAsString, referencedNode);
							}
							else if (referencedNode.isNodeType(CmsBuiltInItem.Topic.getJcrName())){
								
								List topicHierarchy = new ArrayList();
								
								Node topicNode = referencedNode;
								
								while (topicNode != null && topicNode.isNodeType(CmsBuiltInItem.Topic.getJcrName())){
									topicHierarchy.add(topicNode);
									topicNode = topicNode.getParent();
								}
								
								//Normally the last node always corresponds to a taxonomy
								if (topicNode.isNodeType(CmsBuiltInItem.Taxonomy.getJcrName())){
									taxonomyNodes.put(cmsRepositoryEntityUtils.getCmsIdentifier(topicNode), topicNode);
								}
								
								//Reverse list so that root topic is the first
								Collections.reverse(topicHierarchy);
								for (int i=0; i());
									}
									
									topicNodes.get(i).put(valueAsString, topicHierarchyNode);
									
								}
								
							}
							else if (referencedNode.isNodeType(CmsBuiltInItem.RepositoryUser.getJcrName()) && ! repositoryUserNodes.containsKey(valueAsString)){
								repositoryUserNodes.put(valueAsString, referencedNode);
							}
						}
						
					}
				}
				
			}
		}
	}
	
	
	private Node retrieveNextObjectNode(
			ContentObjectCriteria contentObjectCriteria,
			CmsScoreNodeIterator nodeIterator) throws RepositoryException,
			ItemNotFoundException, AccessDeniedException {
		Node nextNode = nodeIterator.nextCmsScoreNode().getJcrNode();

		//Special cases.
		//In cases of complex queries, primary nodes (contentObject, topic, space, taxonomy, repositoryUser)
		//may not be returned. In these case we must locate the primary node to serialize
		if (CmsBuiltInItem.Localization.getJcrName().equals(nextNode.getName())){
			//Node represents Localization node of a Topic or a Space
			//Serialize its parent
			nextNode = nextNode.getParent();
		}
		else if (! nextNode.isNodeType(CmsBuiltInItem.StructuredContentObject.getJcrName())){
			nextNode = contentObjectRenderer.retrieveContentObjectNodeToBeUsedForRendering(nextNode, contentObjectCriteria.getRenderProperties());
		}
		return nextNode;
	}
	
	
	
	private void createRootElement(Serializer serializer, String rootEntityName, ResourceRepresentationType  resourceRepresentationType, boolean createObjectTypeNamespaces)	throws Exception {
		
		AttributesImpl atts = generateRootElementAttributes(serializer,rootEntityName, resourceRepresentationType, createObjectTypeNamespaces);
		
File
SerializationBean.java
Developer's decision
Combination
Kind of conflict
Comment
Method declaration
Method signature
Chunk
Conflicting content
			}


<<<<<<< HEAD
			if (createObjectTypeNamespaces && (entityTypeToSerialize == null || CmsEntityType.REPOSITORY == entityTypeToSerialize || CmsEntityType.CONTENT_OBJECT == entityTypeToSerialize)){
=======
			if (createContentTypeNamespaces && (entityTypeToSerialize == null || CmsEntityType.REPOSITORY == entityTypeToSerialize || CmsEntityType.OBJECT == entityTypeToSerialize)){
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
				Map prefixesPerType = new HashMap();

				createXSISchemaLocationValueForAllDefinitions(atts, xsiSchemaLocations, prefixesPerType);
Solution content
			}

			if (createObjectTypeNamespaces && (entityTypeToSerialize == null || CmsEntityType.REPOSITORY == entityTypeToSerialize || CmsEntityType.OBJECT == entityTypeToSerialize)){
				Map prefixesPerType = new HashMap();

				createXSISchemaLocationValueForAllDefinitions(atts, xsiSchemaLocations, prefixesPerType);
File
SerializationBean.java
Developer's decision
Manual
Kind of conflict
If statement
Chunk
Conflicting content
	@Transactional(readOnly = false, rollbackFor = CmsException.class)
	public boolean deleteSpace(String spaceId) {
		try{
<<<<<<< HEAD
		return spaceDao.deleteSpace(spaceId);
=======
			return spaceDao.deleteSpace(spaceId);
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
		}
		catch(CmsException e){
			throw e;
Solution content
	@Transactional(readOnly = false, rollbackFor = CmsException.class)
	public boolean deleteSpace(String spaceId) {
		try{
			return spaceDao.deleteSpace(spaceId);
		}
		catch(CmsException e){
			throw e;
File
SpaceServiceImpl.java
Developer's decision
Version 1
Kind of conflict
Method invocation
Return statement
Chunk
Conflicting content
package  org.betaconceptframework.astroboa.model.impl.query.parser;


<<<<<<< HEAD
import org.betaconceptframework.astroboa.api.model.query.criteria.ContentObjectCriteria;
import org.betaconceptframework.astroboa.api.model.query.criteria.CmsCriteria.SearchMode;
import org.betaconceptframework.astroboa.api.model.query.criteria.TopicCriteria;
import org.betaconceptframework.astroboa.api.model.query.criteria.LocalizationCriterion;
import org.betaconceptframework.astroboa.model.impl.item.CmsBuiltInItem;
import org.betaconceptframework.astroboa.api.model.query.criteria.Criterion;
import org.betaconceptframework.astroboa.api.model.query.Condition;
import org.betaconceptframework.astroboa.api.model.query.QueryOperator;
import org.betaconceptframework.astroboa.model.factory.CriterionFactory;
import org.betaconceptframework.astroboa.model.factory.CmsCriteriaFactory;
import org.betaconceptframework.astroboa.util.DateUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.jackrabbit.util.ISO8601;

=======
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
import java.util.Calendar;
import java.util.TimeZone;
import java.util.regex.Matcher;
Solution content
package  org.betaconceptframework.astroboa.model.impl.query.parser;


import org.betaconceptframework.astroboa.api.model.query.criteria.ContentObjectCriteria;
import org.betaconceptframework.astroboa.api.model.query.criteria.CmsCriteria.SearchMode;
import org.betaconceptframework.astroboa.api.model.query.criteria.TopicCriteria;
import org.betaconceptframework.astroboa.api.model.query.criteria.LocalizationCriterion;
import org.betaconceptframework.astroboa.model.impl.item.CmsBuiltInItem;
import org.betaconceptframework.astroboa.api.model.query.criteria.Criterion;
import org.betaconceptframework.astroboa.api.model.query.Condition;
import org.betaconceptframework.astroboa.api.model.query.QueryOperator;
import org.betaconceptframework.astroboa.model.factory.CriterionFactory;
import org.betaconceptframework.astroboa.model.factory.CmsCriteriaFactory;
import org.betaconceptframework.astroboa.util.DateUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.jackrabbit.util.ISO8601;

import java.util.Calendar;
import java.util.TimeZone;
import java.util.regex.Matcher;
File
CriterionParser.java
Developer's decision
Version 1
Kind of conflict
Import
Chunk
Conflicting content
	}
	
	
<<<<<<< HEAD
	public static final String RESOURCE_API_OBJECTS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"objects";
	public static final String DEPRECATED_RESOURCE_API_OBJECTS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"contentObject";
	public static final String RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"taxonomies";
	public static final String DEPRECATED_RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"taxonomy";
	public static final String RESOURCE_API_TOPICS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"topics";
	public static final String DEPRECATED_RESOURCE_API_TOPICS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"topic";
	public static final String RESOURCE_API_BINARY_CHANNEL_URI_PATH = CmsConstants.FORWARD_SLASH+"binaryChannel";
	public static final String RESOURCE_API_MODELS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"models";
	public static final String DEPRECATED_RESOURCE_API_MODELS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"model";
=======
	public static final String RESOURCE_API_CONTENT_URI_PATH = "objects";
	public static final String RESOURCE_API_TAXONOMY_URI_PATH = "taxonomies";
	public static final String RESOURCE_API_TOPIC_URI_PATH = "topics";
	public static final String RESOURCE_API_MODEL_URI_PATH = "models";
	public static final String RESOURCE_API_BINARY_CHANNEL_URI_PATH = CmsConstants.FORWARD_SLASH+"binaryChannel";
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
	public static final String RESOURCE_API_ENCRYPTION_UTILITY_URI_PATH = CmsConstants.FORWARD_SLASH+"encrypt";

	/**
Solution content
	}
	
	
	public static final String RESOURCE_API_OBJECTS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"objects";
	public static final String DEPRECATED_RESOURCE_API_OBJECTS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"contentObject";
	public static final String RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"taxonomies";
	public static final String DEPRECATED_RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"taxonomy";
	public static final String RESOURCE_API_TOPICS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"topics";
	public static final String DEPRECATED_RESOURCE_API_TOPICS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"topic";
	public static final String RESOURCE_API_BINARY_CHANNEL_URI_PATH = CmsConstants.FORWARD_SLASH+"binaryChannel";
	public static final String RESOURCE_API_MODELS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"models";
	public static final String DEPRECATED_RESOURCE_API_MODELS_COLLECTION_URI_PATH = CmsConstants.FORWARD_SLASH+"model";
	public static final String RESOURCE_API_ENCRYPTION_UTILITY_URI_PATH = CmsConstants.FORWARD_SLASH+"encrypt";

	/**
File
CmsConstants.java
Developer's decision
Version 1
Kind of conflict
Attribute
Chunk
Conflicting content
			
			if (ContentObject.class.isAssignableFrom(type) || CmsProperty.class.isAssignableFrom(type) 
					|| BinaryChannel.class.isAssignableFrom(type)){
<<<<<<< HEAD
				sb.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH);
			}
			else if (Topic.class.isAssignableFrom(type)){
				sb.append(CmsConstants.RESOURCE_API_TOPICS_COLLECTION_URI_PATH);
=======
				sb.append(CmsConstants.FORWARD_SLASH)
				.append(CmsConstants.RESOURCE_API_CONTENT_URI_PATH);
			}
			else if (Topic.class.isAssignableFrom(type)){
				sb.append(CmsConstants.FORWARD_SLASH)
				.append(CmsConstants.RESOURCE_API_TOPIC_URI_PATH);
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
			}
			else if (Space.class.isAssignableFrom(type)){
				sb.append(CmsConstants.FORWARD_SLASH);
Solution content
			
			if (ContentObject.class.isAssignableFrom(type) || CmsProperty.class.isAssignableFrom(type) 
					|| BinaryChannel.class.isAssignableFrom(type)){
				sb.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH);
			}
			else if (Topic.class.isAssignableFrom(type)){
				sb.append(CmsConstants.RESOURCE_API_TOPICS_COLLECTION_URI_PATH);
			}
			else if (Space.class.isAssignableFrom(type)){
				sb.append(CmsConstants.FORWARD_SLASH);
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
If statement
Method invocation
Chunk
Conflicting content
				sb.append(CmsBuiltInItem.Space.getLocalPart());
			}
			else if (Taxonomy.class.isAssignableFrom(type)){
<<<<<<< HEAD
				sb.append(CmsConstants.RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH);
			}
			else if (CmsDefinition.class.isAssignableFrom(type)){
				sb.append(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH);
=======
				sb.append(CmsConstants.FORWARD_SLASH)
				.append(CmsConstants.RESOURCE_API_TAXONOMY_URI_PATH);
			}
			else if (CmsDefinition.class.isAssignableFrom(type)){
				sb.append(CmsConstants.FORWARD_SLASH)
				.append(CmsConstants.RESOURCE_API_MODEL_URI_PATH);
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
			}
			
			sb.append(CmsConstants.FORWARD_SLASH);
Solution content
				sb.append(CmsBuiltInItem.Space.getLocalPart());
			}
			else if (Taxonomy.class.isAssignableFrom(type)){
				sb.append(CmsConstants.RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH);
			}
			else if (CmsDefinition.class.isAssignableFrom(type)){
				sb.append(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH);
			}
			
			sb.append(CmsConstants.FORWARD_SLASH);
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
If statement
Method invocation
Chunk
Conflicting content
		
		
		if (cmsEntity instanceof Taxonomy){
<<<<<<< HEAD
			sb.append(CmsConstants.RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH)
=======
			sb.append(CmsConstants.FORWARD_SLASH)
				.append(CmsConstants.RESOURCE_API_TAXONOMY_URI_PATH)
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
				.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.isFriendly()){
Solution content
		
		
		if (cmsEntity instanceof Taxonomy){
			sb.append(CmsConstants.RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH)
				.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.isFriendly()){
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
Method invocation
Chunk
Conflicting content
			}
		}
		else if (cmsEntity instanceof Topic){
<<<<<<< HEAD
			sb.append(CmsConstants.RESOURCE_API_TOPICS_COLLECTION_URI_PATH)
=======
			sb.append(CmsConstants.FORWARD_SLASH)
			.append(CmsConstants.RESOURCE_API_TOPIC_URI_PATH)
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
				.append(CmsConstants.FORWARD_SLASH);

			if (urlProperties.isFriendly()){
Solution content
			}
		}
		else if (cmsEntity instanceof Topic){
			sb.append(CmsConstants.RESOURCE_API_TOPICS_COLLECTION_URI_PATH)
				.append(CmsConstants.FORWARD_SLASH);

			if (urlProperties.isFriendly()){
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
Method invocation
Chunk
Conflicting content
			}
		}
		else if (cmsEntity instanceof ContentObject){
<<<<<<< HEAD
			sb.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
=======
			sb.append(CmsConstants.FORWARD_SLASH)
				.append(CmsConstants.RESOURCE_API_CONTENT_URI_PATH)
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
				.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.isFriendly()){
Solution content
			}
		}
		else if (cmsEntity instanceof ContentObject){
			sb.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
				.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.isFriendly()){
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
Method invocation
Chunk
Conflicting content
			
		}
		else if (cmsEntity instanceof CmsProperty){
<<<<<<< HEAD
			sb.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
=======
			sb.append(CmsConstants.FORWARD_SLASH)
				.append(CmsConstants.RESOURCE_API_CONTENT_URI_PATH)
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
				.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.isFriendly()){
Solution content
			
		}
		else if (cmsEntity instanceof CmsProperty){
			sb.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
				.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.isFriendly()){
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
Method invocation
Chunk
Conflicting content
				.append(((CmsProperty)cmsEntity).getPermanentPath());
		}
		else if (cmsEntity instanceof ContentObjectTypeDefinition){
<<<<<<< HEAD
			sb.append(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH)
			.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.getResourceRepresentationType() !=null && 
					urlProperties.getResourceRepresentationType().equals(ResourceRepresentationType.XSD)){
				String schemaFilename = retrieveSchemaFileName((ContentObjectTypeDefinition)cmsEntity);
					
				if (schemaFilename != null){
						sb.append(schemaFilename);
				}
				else{
					sb.append(((ContentObjectTypeDefinition)cmsEntity).getName());
				}
			}
			else{
				sb.append(((ContentObjectTypeDefinition)cmsEntity).getName());	
			}
		}
		else if (cmsEntity instanceof CmsPropertyDefinition){
			sb.append(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH)
			.append(CmsConstants.FORWARD_SLASH);

			if (urlProperties.getResourceRepresentationType() !=null && 
					urlProperties.getResourceRepresentationType().equals(ResourceRepresentationType.XSD)){

				String schemaFilename = retrieveSchemaFileName((CmsPropertyDefinition)cmsEntity);
				
				if (schemaFilename != null){
					sb.append(schemaFilename);
				}
				else{
					sb.append(((CmsPropertyDefinition)cmsEntity).getFullPath());
				}
			}
			else{
				sb.append(((CmsPropertyDefinition)cmsEntity).getFullPath());
			}
=======
			sb.append(CmsConstants.FORWARD_SLASH)
			.append(CmsConstants.RESOURCE_API_MODEL_URI_PATH)
			.append(CmsConstants.FORWARD_SLASH)
			.append(((ContentObjectTypeDefinition)cmsEntity).getName());
		}
		else if (cmsEntity instanceof CmsPropertyDefinition){
			sb.append(CmsConstants.FORWARD_SLASH)
			.append(CmsConstants.RESOURCE_API_MODEL_URI_PATH)
			.append(CmsConstants.FORWARD_SLASH)
			.append(((CmsPropertyDefinition)cmsEntity).getFullPath());
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
		}

	}
Solution content
				.append(((CmsProperty)cmsEntity).getPermanentPath());
		}
		else if (cmsEntity instanceof ContentObjectTypeDefinition){
			sb.append(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH)
			.append(CmsConstants.FORWARD_SLASH);
			
			if (urlProperties.getResourceRepresentationType() !=null && 
					urlProperties.getResourceRepresentationType().equals(ResourceRepresentationType.XSD)){
				String schemaFilename = retrieveSchemaFileName((ContentObjectTypeDefinition)cmsEntity);
					
				if (schemaFilename != null){
						sb.append(schemaFilename);
				}
				else{
					sb.append(((ContentObjectTypeDefinition)cmsEntity).getName());
				}
			}
			else{
				sb.append(((ContentObjectTypeDefinition)cmsEntity).getName());	
			}
		}
		else if (cmsEntity instanceof CmsPropertyDefinition){
			sb.append(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH)
			.append(CmsConstants.FORWARD_SLASH);

			if (urlProperties.getResourceRepresentationType() !=null && 
					urlProperties.getResourceRepresentationType().equals(ResourceRepresentationType.XSD)){

				String schemaFilename = retrieveSchemaFileName((CmsPropertyDefinition)cmsEntity);
				
				if (schemaFilename != null){
					sb.append(schemaFilename);
				}
				else{
					sb.append(((CmsPropertyDefinition)cmsEntity).getFullPath());
				}
			}
			else{
				sb.append(((CmsPropertyDefinition)cmsEntity).getFullPath());
			}
		}

	}
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
If statement
Method invocation
Chunk
Conflicting content
		
		//Add output. XML is considered default value and therefore it is not added
		if (resourceRepresentationType != null && ! resourceRepresentationType.equals(ResourceRepresentationType.XML)){
<<<<<<< HEAD
			
			//Special case. if entity is a definition and output is XSD then do not add this parameter as well
			// since in this case, the schema filename is provided in the URL
			if (! CmsDefinition.class.isAssignableFrom(type) || ! resourceRepresentationType.equals(ResourceRepresentationType.XSD)){
				sb.append("?output=");
				sb.append(resourceRepresentationType.getTypeAsString().toLowerCase());
			}
=======
			sb.append("?output=");
			sb.append(resourceRepresentationType.getTypeAsString().toLowerCase());
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
		}
	}
Solution content
		
		//Add output. XML is considered default value and therefore it is not added
		if (resourceRepresentationType != null && ! resourceRepresentationType.equals(ResourceRepresentationType.XML)){
			//Special case. if entity is a definition and output is XSD then do not add this parameter as well
			// since in this case, the schema filename is provided in the URL
			if (! CmsDefinition.class.isAssignableFrom(type) || ! resourceRepresentationType.equals(ResourceRepresentationType.XSD)){
				sb.append("?output=");
				sb.append(resourceRepresentationType.getTypeAsString().toLowerCase());
			}
		}
	}
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
Comment
If statement
Method invocation
Chunk
Conflicting content
		// /objects//
		// ?contentDispositionType=&width=&height=
			
<<<<<<< HEAD
		contentApiURLBuilder.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH);
=======
		contentApiURLBuilder.append(CmsConstants.FORWARD_SLASH+CmsConstants.RESOURCE_API_CONTENT_URI_PATH);
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172

		contentApiURLBuilder.append(CmsConstants.FORWARD_SLASH+contentObjectIdOrSystemName);
		
Solution content
		// /objects//
		// ?contentDispositionType=&width=&height=
			
		contentApiURLBuilder.append(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH);

		contentApiURLBuilder.append(CmsConstants.FORWARD_SLASH+contentObjectIdOrSystemName);
		
File
ResourceApiURLUtils.java
Developer's decision
Version 1
Kind of conflict
Method invocation
Chunk
Conflicting content
		}
	}

<<<<<<< HEAD
	@Path(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
	public ContentObjectResource getObjectsCollectionResource(){
		
		return new ContentObjectResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
=======
	@Path("/{contentURIPath: "+ CmsConstants.RESOURCE_API_CONTENT_URI_PATH + "|" + CmsConstants.DEPRECATED_RESOURCE_API_CONTENT_URI_PATH +"}")
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
	public ContentObjectResource getContentObjectResource(){
		
		return new ContentObjectResource(astroboaClient);
Solution content
		}
	}

	@Path(CmsConstants.RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
	public ContentObjectResource getObjectsCollectionResource(){
		
		return new ContentObjectResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_OBJECTS_COLLECTION_URI_PATH)
	public ContentObjectResource getContentObjectResource(){
		
		return new ContentObjectResource(astroboaClient);
File
ResourceLocator.java
Developer's decision
Version 1
Kind of conflict
Annotation
Comment
Method declaration
Chunk
Conflicting content
		
	}
	
<<<<<<< HEAD
	@Path(CmsConstants.RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH)
	public TaxonomyResource getTaxonomiesCollectionResource(){
		
		return new TaxonomyResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH)
=======
	@Path("/{taxonomyURIPath: "+ CmsConstants.RESOURCE_API_TAXONOMY_URI_PATH + "|" + CmsConstants.DEPRECATED_RESOURCE_API_TAXONOMY_URI_PATH +"}")
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
	public TaxonomyResource getTaxonomyResource(){
		
		return new TaxonomyResource(astroboaClient);
Solution content
		
	}
	
	@Path(CmsConstants.RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH)
	public TaxonomyResource getTaxonomiesCollectionResource(){
		
		return new TaxonomyResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_TAXONOMIES_COLLECTION_URI_PATH)
	public TaxonomyResource getTaxonomyResource(){
		
		return new TaxonomyResource(astroboaClient);
File
ResourceLocator.java
Developer's decision
Version 1
Kind of conflict
Annotation
Comment
Method declaration
Chunk
Conflicting content
		
	}
	
<<<<<<< HEAD
	@Path(CmsConstants.RESOURCE_API_TOPICS_COLLECTION_URI_PATH)
	public TopicResource getTopicsCollectionResource(){
		
		return new TopicResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_TOPICS_COLLECTION_URI_PATH)
=======
	@Path("/{topicURIPath: "+ CmsConstants.RESOURCE_API_TOPIC_URI_PATH + "|" + CmsConstants.DEPRECATED_RESOURCE_API_TOPIC_URI_PATH +"}")
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
	public TopicResource getTopicResource(){
		return new TopicResource(astroboaClient);
	}
Solution content
		
	}
	
	@Path(CmsConstants.RESOURCE_API_TOPICS_COLLECTION_URI_PATH)
	public TopicResource getTopicsCollectionResource(){
		
		return new TopicResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_TOPICS_COLLECTION_URI_PATH)
	public TopicResource getTopicResource(){
		return new TopicResource(astroboaClient);
	}
File
ResourceLocator.java
Developer's decision
Version 1
Kind of conflict
Annotation
Comment
Method declaration
Chunk
Conflicting content
	}
	
<<<<<<< HEAD
	@Path(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH)
	public DefinitionResource getModelsCollectionResource(){
		
		return new DefinitionResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_MODELS_COLLECTION_URI_PATH)
=======
	@Path("/{modelURIPath: "+ CmsConstants.RESOURCE_API_MODEL_URI_PATH + "|" + CmsConstants.DEPRECATED_RESOURCE_API_MODEL_URI_PATH +"}")
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
	public DefinitionResource getDefinitionResource(){
		
		return new DefinitionResource(astroboaClient);
Solution content
	}
	
	@Path(CmsConstants.RESOURCE_API_MODELS_COLLECTION_URI_PATH)
	public DefinitionResource getModelsCollectionResource(){
		
		return new DefinitionResource(astroboaClient);
		
	}
	
	// this path will not be supported in the next major version, i.e. 4.0
	@Path(CmsConstants.DEPRECATED_RESOURCE_API_MODELS_COLLECTION_URI_PATH)
	public DefinitionResource getDefinitionResource(){
		
		return new DefinitionResource(astroboaClient);
File
ResourceLocator.java
Developer's decision
Version 1
Kind of conflict
Annotation
Comment
Method declaration
Chunk
Conflicting content
				String requestContent, String httpMethod, boolean updateLastModificationTime){
		
		
<<<<<<< HEAD
		  //Import from xml or json. ContentObject will not be saved
		  ContentObject contentObjectToBeSaved = astroboaClient.getImportService().importContentObject(requestContent, false, updateLastModificationTime, false, null);
=======
    	  //Import from xml or json. ContentObject will not be saved
		ImportConfiguration importConfiguration = ImportConfiguration.object()
				.persist(PersistMode.DO_NOT_PERSIST)
				.build();

		  ContentObject contentObjectToBeSaved = astroboaClient.getImportService().importContentObject(requestContent, importConfiguration);
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
			
		  if (logger.isDebugEnabled()){
			  logger.debug("XML output of imported content object \n{}", contentObjectToBeSaved.xml(true));
Solution content
				String requestContent, String httpMethod, boolean updateLastModificationTime){
		
		
    	  //Import from xml or json. ContentObject will not be saved
		ImportConfiguration importConfiguration = ImportConfiguration.object()
				.persist(PersistMode.DO_NOT_PERSIST)
				.updateLastModificationTime(updateLastModificationTime)
				.build();

		  ContentObject contentObjectToBeSaved = astroboaClient.getImportService().importContentObject(requestContent, importConfiguration);
			
		  if (logger.isDebugEnabled()){
			  logger.debug("XML output of imported content object \n{}", contentObjectToBeSaved.xml(true));
File
ContentObjectResource.java
Developer's decision
Manual
Kind of conflict
Comment
Method invocation
Variable
Chunk
Conflicting content
		
		String xsiNamesplaceDeclaration = "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"";
		String xmlNamespaceDeclaration = "xmlns:xml=\"http://www.w3.org/XML/1998/namespace\"";
<<<<<<< HEAD
		String astroboaModelScehmaLocation =removeWhitespacesIfNecessary("http://www.betaconceptframework.org/schema/astroboa/model http://localhost:8080/resource-api/repository/models/"+CmsConstants.ASTROBOA_MODEL_SCHEMA_FILENAME_WITH_VERSION);
=======
		String astroboaModelScehmaLocation =removeWhitespacesIfNecessary("http://www.betaconceptframework.org/schema/astroboa/model http://localhost:8080/resource-api/repository/models/astroboa-model");
>>>>>>> 2db91b6c5e035327b66c40bf15e94b85b85db172
		String xmlScehmaLocation = removeWhitespacesIfNecessary("http://www.w3.org/XML/1998/namespace http://www.w3.org/2001/03/xml.xsd");
		
		String xmlFromApi = taxonomy.xml(prettyPrint);
Solution content
		
		String xsiNamesplaceDeclaration = "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"";
		String xmlNamespaceDeclaration = "xmlns:xml=\"http://www.w3.org/XML/1998/namespace\"";
		String astroboaModelScehmaLocation =removeWhitespacesIfNecessary("http://www.betaconceptframework.org/schema/astroboa/model http://localhost:8080/resource-api/repository/models/"+CmsConstants.ASTROBOA_MODEL_SCHEMA_FILENAME_WITH_VERSION);
		String xmlScehmaLocation = removeWhitespacesIfNecessary("http://www.w3.org/XML/1998/namespace http://www.w3.org/2001/03/xml.xsd");
		
		String xmlFromApi = taxonomy.xml(prettyPrint);
File
TaxonomyJAXBTest.java
Developer's decision
Version 1
Kind of conflict
Method invocation
Variable