Package org.itsnat.impl.core.clientdoc

Examples of org.itsnat.impl.core.clientdoc.ClientDocumentStfulImpl


    public void processRequest(ClientDocumentStfulImpl clientDocStateless)
    {
        if (!checkValidClientSession())
            return;

        ClientDocumentStfulImpl clientDoc;
        if (clientDocStateless != null)
        {
            clientDoc = clientDocStateless;
        }
        else
View Full Code Here


        if (value != null)
            DOMUtilInternal.setAttribute(elem,name,value);
        else
        {
            // Ver notas NodeAllAttribTransportUtil
            ClientDocumentStfulImpl clientDoc = event.getClientDocumentStful();
            Browser browser = clientDoc.getBrowser();
            boolean toLowerCase = (browser instanceof BrowserOpera) && request.getItsNatDocument().isMIME_HTML();
            if (toLowerCase) name = name.toLowerCase();
            elem.removeAttribute(name)// Si es null es que ha sido borrado en el cliente
        }
    }
View Full Code Here

       
        // Es necesario acceder a las tripas de ItsNat para asegurarnos que no est� cacheado
        // pues necesitamos forzar la b�squeda del <body> via path tras la inserci�n del intruso,
        // de otra manera este test no sirve para nada
        HTMLElement body = itsNatDoc.getHTMLDocument().getBody();
        ClientDocumentStfulImpl clientDoc = (ClientDocumentStfulImpl)itsNatDoc.getClientDocumentOwner();
        clientDoc.removeNodeFromCacheAndSendCode(body);
        // Nos aseguramos
        NodeCacheRegistryImpl nodeCache = clientDoc.getNodeCacheRegistry();
        if (nodeCache.getId(body) != null) throw new RuntimeException("Unexpected Error");

        String refBody = itsNatDoc.getScriptUtil().getNodeReference(body);

        code = new StringBuilder();
View Full Code Here

        Element validChildElem1 = doc.createElement("input"); // Para que si algo falla sea muy visible en el documento (por defecto suele ser un "text")
        parentNode.appendChild(validChildElem1);
        Element validChildElem2 = doc.createElement("textarea"); // Para que si algo falla sea muy visible en el documento (por defecto suele ser un "text")
        parentNode.insertBefore(validChildElem2,validChildElem1);

        ClientDocumentStfulImpl clientDoc = (ClientDocumentStfulImpl)itsNatDoc.getClientDocumentOwner();
        // Es necesario acceder a las tripas de ItsNat para asegurarnos que est� cacheado
        NodeCacheRegistryImpl nodeCache = clientDoc.getNodeCacheRegistry();
        if (nodeCache.getId(validChildElem1) == null// DEBE estar cacheado aunque est� reci�n insertado, en eso consiste la protecci�n
            throw new RuntimeException("Unexpected Error");
        if (nodeCache.getId(validChildElem2) == null// DEBE estar cacheado aunque est� reci�n insertado, en eso consiste la protecci�n
            throw new RuntimeException("Unexpected Error");
View Full Code Here

    {
        long computedPeriod = handleTimerEvent((ClientItsNatTimerEventImpl)event);

        if (computedPeriod != -1// Sigue ejecut�ndose (status en EXECUTED y period > 0)
        {
            ClientDocumentStfulImpl clientDoc = event.getClientDocumentStful();
            JSRenderItsNatTimerEventListenerImpl.SINGLETON.updateItsNatTimerEventListenerCode(this,computedPeriod,clientDoc);
        }
    }
View Full Code Here

        // Obtenemos los elementos antes de serializar y de ejecutar los listeners de usuario
        // Antes de serializar porque en el caso de fastLoad = false, es lo primero que se hace
        // en el caso de fastLoad = true se ejecutan primero los listeners del usuario, dichos
        // listeners

        ClientDocumentStfulImpl clientDoc = getClientDocumentStful();
        if (!clientDoc.isSendCodeEnabled())
            return null; // Hay que generar c�digo, aunque no ahora, por lo que no vale la pena esto si no se puede enviar c�digo

        Browser browser = clientDoc.getBrowser();
        if (!browser.canNativelyRenderOtherNSInXHTMLDoc())
            return null; // Si no puede renderizar por ejemplo SVG no vale la pena esto

        if (!getItsNatHTMLDocument().isMIME_HTML())
            return null; // En MIME XHTML no hace falta esto
View Full Code Here

        // pero el evento unload NO se lanza en BlackBerry aunque lo diga la documentaci�n oficial.
    }

    public void processResponse()
    {
        ClientDocumentStfulImpl clientDoc = getClientDocumentStful();
        if (clientDoc.isScriptingEnabled())
            if (!checkClientJavaScriptEnabled())
                return;

        super.processResponse();
    }
View Full Code Here

        fixBackButton(); // Debe a�adirse lo m�s �ltimo posible pues registra un listener "unload" que debe ejecutarse el �ltimo
    }

    public void fixBackButton()
    {
        ClientDocumentStfulImpl clientDoc = getClientDocumentStful();
        if (!clientDoc.isScriptingEnabled())
            return;

        // Opera Mini no recibe clicks en BODY, ni en window ni en document etc
        // Si se vuelve via back o similares es posible que la p�gina a la que se vuelve
        // haya ya ejecutado el evento unload, en ese caso lo que hay que hacer es recargar la p�gina
        // en cuanto el usuario toque algo.

        Document doc = clientDoc.getItsNatStfulDocument().getDocument();
        AbstractView view = ((DocumentView)doc).getDefaultView();
        EventListener listener = new EventListenerInternal()
        {
            public void handleEvent(Event evt) {}
        };
        StringBuilder preSendCode = new StringBuilder();
        preSendCode.append("event.setMustBeSent(false);"); // Evita enviar el evento unload
        preSendCode.append("var func = function()");
        preSendCode.append("  { itsNatDoc.disabledEvents = true; window.location.reload(true); return false; };"); // El return false evita que se env�e el evento y el itsNatDoc.disabledEvents = true evita otros eventos
        preSendCode.append("itsNatDoc.addGlobalEventListener(func);");
        clientDoc.addEventListener((EventTarget)view, "unload", listener, false,preSendCode.toString());
    }
View Full Code Here

        ItsNatStfulDocumentImpl itsNatDoc = getItsNatStfulDocument();

        ClientDocumentStfulImpl[] allClient = itsNatDoc.getAllClientDocumentStfulsCopy();
        for(int i = 0; i < allClient.length; i++)
        {
            ClientDocumentStfulImpl clientDoc = allClient[i];
            ItsNatModalLayerClientDocImpl compClient = createItsNatModalLayerClientDoc(clientDoc);
            clientDocMap.put(clientDoc, compClient);

            compClient.postInsertLayer();
        }
View Full Code Here

    public int getTimeout()
    {
        int timeout = super.getTimeout();
        if (timeout <= 0) return -1;

        ClientDocumentStfulImpl clientDoc = getClientDocumentStful();
        Browser browser = clientDoc.getBrowser();
        if ((browser instanceof BrowserGecko)||
            (browser instanceof BrowserOpera)||
            (browser instanceof BrowserAdobeSVG)|| // ASV
            (browser instanceof BrowserBatik)) // En Batik applet no hay redimensionamiento porque no es normal cambiar las dimensiones del applet
            return -1; // No es necesario el redimensionamiento, se redimensiona autom�ticamente cuando cambia el cuadro (gracias a los valores "100%")
View Full Code Here

TOP

Related Classes of org.itsnat.impl.core.clientdoc.ClientDocumentStfulImpl

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.