Search in sources :

Example 1 with MWebProject

use of org.compiere.model.MWebProject in project adempiere by adempiere.

the class WebProjectDeploy method doIt.

//	prepare
/**
	 * 	Process
	 *	@return info
	 *	@throws Exception
	 */
protected String doIt() throws Exception {
    org.compiere.cm.CacheHandler thisHandler = new org.compiere.cm.CacheHandler(org.compiere.cm.CacheHandler.convertJNPURLToCacheURL(getCtx().getProperty("java.naming.provider.url")), log, getCtx(), get_TrxName());
    log.info("CM_WebProject_ID=" + p_CM_WebProject_ID);
    m_project = new MWebProject(getCtx(), p_CM_WebProject_ID, get_TrxName());
    if (m_project.get_ID() != p_CM_WebProject_ID)
        throw new AdempiereUserError("@NotFound@ @CM_WebProject_ID@ " + p_CM_WebProject_ID);
    //	Deploy Media
    MMedia[] media = MMedia.getMedia(m_project);
    MMediaServer[] mserver = MMediaServer.getMediaServer(m_project);
    for (int i = 0; i < mserver.length; i++) mserver[i].deploy(media);
    //	Stage
    MCStage[] stages = MCStage.getStages(m_project);
    for (int i = 0; i < stages.length; i++) m_map.put(new Integer(stages[i].getCM_CStage_ID()), stages[i]);
    //	Copy Stage Tree
    MTree treeS = new MTree(getCtx(), m_project.getAD_TreeCMS_ID(), false, false, get_TrxName());
    MTreeNode root = treeS.getRoot();
    copyStage(root, "/");
    //	Delete Inactive Containers
    MContainer[] containers = MContainer.getContainers(m_project);
    for (int i = 0; i < containers.length; i++) {
        MContainer container = containers[i];
        if (!m_idList.contains(new Integer(container.getCM_Container_ID()))) {
            String name = container.getName();
            if (container.delete(true))
                log.fine("Deleted: " + name);
            else //	e.g. was referenced
            {
                log.warning("Failed Delete: " + name);
                addLog(0, null, null, "@Error@ @Delete@: " + name);
            }
        }
        // Remove Container from cache
        thisHandler.cleanContainer(container.get_ID());
    }
    //	Delete Inactive
    //	Sync Stage & Container Tree
    MTree_NodeCMS[] nodesCMS = MTree_NodeCMS.getTree(getCtx(), m_project.getAD_TreeCMS_ID(), get_TrxName());
    MTree_NodeCMC[] nodesCMC = MTree_NodeCMC.getTree(getCtx(), m_project.getAD_TreeCMC_ID(), get_TrxName());
    for (int s = 0; s < nodesCMS.length; s++) {
        MTree_NodeCMS nodeCMS = nodesCMS[s];
        int Node_ID = nodeCMS.getNode_ID();
        for (int c = 0; c < nodesCMC.length; c++) {
            MTree_NodeCMC nodeCMC = nodesCMC[c];
            if (nodeCMC.getNode_ID() == Node_ID) {
                //if (nodeCMS.getParent_ID()!=0) 
                nodeCMC.setParent_ID(nodeCMS.getParent_ID());
                nodeCMC.setSeqNo(nodeCMS.getSeqNo());
                nodeCMC.saveEx();
                break;
            }
        }
    }
    //	for all stage nodes
    // Clean ContainerTree Cache
    thisHandler.cleanContainerTree(p_CM_WebProject_ID);
    return "@Copied@ @CM_Container_ID@ #" + m_idList.size();
}
Also used : MTree_NodeCMS(org.compiere.model.MTree_NodeCMS) MTreeNode(org.compiere.model.MTreeNode) AdempiereUserError(org.compiere.util.AdempiereUserError) MMedia(org.compiere.model.MMedia) MWebProject(org.compiere.model.MWebProject) MTree(org.compiere.model.MTree) MTree_NodeCMC(org.compiere.model.MTree_NodeCMC) MCStage(org.compiere.model.MCStage) MMediaServer(org.compiere.model.MMediaServer) MContainer(org.compiere.model.MContainer)

Example 2 with MWebProject

use of org.compiere.model.MWebProject in project adempiere by adempiere.

the class ContainerTree method getContainerTree.

/**
	 * 	getContainerTree
	 *	@param ID
	 *	@param trxName
	 *	@return XML StringBuffer
	 */
public StringBuffer getContainerTree(int ID, String trxName) {
    StringBuffer xmlCode = new StringBuffer();
    if (cache.containsKey("" + ID)) {
        use("" + ID);
        return (StringBuffer) cache.get("" + ID);
    } else {
        MWebProject thisProject = new MWebProject(ctx, ID, trxName);
        TreeXML thisTree = new TreeXML(thisProject);
        xmlCode.append(thisTree.getContainerXML());
        xmlCode.append(thisTree.getTreeXML());
        put("" + ID, xmlCode);
        return xmlCode;
    }
}
Also used : MWebProject(org.compiere.model.MWebProject) TreeXML(org.compiere.cm.utils.TreeXML)

Example 3 with MWebProject

use of org.compiere.model.MWebProject in project adempiere by adempiere.

the class MMediaServerTest method testQuery.

public void testQuery() throws Exception {
    MWebProject m_project = new MWebProject(getCtx(), 102, getTrxName());
    MMediaServer[] mserver = MMediaServer.getMediaServer(m_project);
    assertTrue("MediaServer must have values", mserver.length > 0);
}
Also used : MMediaServer(org.compiere.model.MMediaServer) MWebProject(org.compiere.model.MWebProject)

Aggregations

MWebProject (org.compiere.model.MWebProject)3 MMediaServer (org.compiere.model.MMediaServer)2 TreeXML (org.compiere.cm.utils.TreeXML)1 MCStage (org.compiere.model.MCStage)1 MContainer (org.compiere.model.MContainer)1 MMedia (org.compiere.model.MMedia)1 MTree (org.compiere.model.MTree)1 MTreeNode (org.compiere.model.MTreeNode)1 MTree_NodeCMC (org.compiere.model.MTree_NodeCMC)1 MTree_NodeCMS (org.compiere.model.MTree_NodeCMS)1 AdempiereUserError (org.compiere.util.AdempiereUserError)1