All Downloads are FREE. Search and download functionalities are using the official Maven repository.

okw.gui.AnyChildwindow Maven / Gradle / Ivy

Go to download

This is the core-module of OpenKeyWord. This module is automatically integrated by the adapters. In GUI automation, the core module is automatically integrated by the GUI modules (dependencies).

There is a newer version: 0.2.44
Show newest version
/*
==============================================================================
  Author: Zoltán Hrabovszki 

  Copyright © 2012 - 2019 IT-Beratung Hrabovszki
  www.OpenKeyWord.de
============================================================================== 

This file is part of OpenKeyWord.

OpenKeyWord is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

OpenKeyWord is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with OpenKeyWord.  If not, see .

Diese Datei ist Teil von OpenKeyWord.

OpenKeyWord ist Freie Software: Sie können es unter den Bedingungen
der GNU General Public License, wie von der Free Software Foundation,
Version 3 der Lizenz oder (nach Ihrer Wahl) jeder späteren
veröffentlichten Version, weiterverbreiten und/oder modifizieren.

OpenKeyWord wird in der Hoffnung, dass es nützlich sein wird, aber
OHNE JEDE GEWÄHRLEISTUNG, bereitgestellt; sogar ohne die implizite
Gewährleistung der MARKTFÄHIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK.
Siehe die GNU General Public License für weitere Details.

Sie sollten eine Kopie der GNU General Public License zusammen mit 
OpenKeyWord erhalten haben. Wenn nicht, siehe .
*/
package okw.gui;

import java.io.IOException;
import java.util.ArrayList;
import java.util.function.Supplier;

import javax.xml.bind.JAXBException;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.xpath.XPathExpressionException;

import org.xml.sax.SAXException;

import okw.FrameObjectDictionary_Sngltn;
import okw.OKW;
import okw.OKW_TimeOut;
import okw.core.IOKW_FN;
import okw.exceptions.OKWFrameObjectMethodNotImplemented;


/** \brief
 * @todo TODO: Description of AnyWin.
 */ 
public abstract class AnyChildwindow extends AnyWinBase implements IGUIChildwindow, IOKW_FN
{
	
  /** \~german
   *  Prüft die Existenz des aktuellen Objektes.
   *  
   *  - Methode kann hier nicht implementiert werden.
   *  - Methoden ist nur als Platzhalter implementiert.
   *  - Hier wird die Ausnahme OKWFrameObjectMethodNotImplemented ausgelöst.
   *  
   *  Hinweis zur Implementierung:
   *  - Implementierung durch Methodeüberschreibung in den GUI-Klassen.
   *  - Ist eine elementare Funktion, muss Werkzeugspezifisch (für Selenium, AutoIt, SilkTets usw.) defiert sein/werden.
   *  - Warten nicht auf die Existenz eines Objektes!
   *  - Es wird nur ein eiziges mal die Existenz geprüft.
   *  - Es wird keine Ausnahme ausgelöst, wenn das Object nicht vorhanden ist!
   *  
   *  @return true, falls das eindeutig Objekt gefunden worden ist ist, sonst false.
   *  \~
   *  @author Zoltán Hrabovszki
   *  @date 2017.01.31
   */  
  public Boolean getExists()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getExists() is not defined for your GUI-Object. Please define first the methode!");
  }

  public Boolean getHasFocus()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getHasFocus() is not defined for your GUI-Object. Please define first the methode!");
  }

  public Boolean getIsActive()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getIsActive() is not defined for your GUI-Object. Please define first the methode!");
  }
  
  public ArrayList getCaption()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getCaption() is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList getTooltip()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getTooltip() is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList getPlaceholder()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getPlaceholder() is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList getLabel()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getLabel() is not defined for your GUI-Object. Please define first the methode!");
  }

  public Integer getMaxLength()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getMaxLength() is not defined for your GUI-Object. Please define first the methode!");
  }

  public Integer getMinLength()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getMinLength() is not defined for your GUI-Object. Please define first the methode!");
  }

  
  public ArrayList getValue()
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method getValue() is not defined for your GUI-Object. Please define first the methode!");
  }

  public void ClickOn( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method ClickOn() is not defined for your GUI-Object. Please define first the methode!");
  }

  public void DoubleClickOn( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public void DoubleClickOn( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList LogCaption( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList LogCaption( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public boolean LogExists( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public boolean LogExists( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public boolean LogHasFocus( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public boolean LogHasFocus( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }
  
  public boolean LogIsActive( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public boolean LogIsActive( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList LogLabel( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList LogLabel( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList LogPlaceholder( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList LogPlace( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList LogSelected( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList LogSelected( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList LogTablecellValue( String COL, String ROW )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList ( String COL, String ROW ) throws Exception' throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList LogTooltip( )
{
  // TODO: /todo Meldung in xml-Auslagern
  throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList LogTooltip( ) throws Exception' throws Exception' is not defined for your GUI-Object. Please define first the methode!");
}

public ArrayList LogValue( )
{
  // TODO: /todo Meldung in xml-Auslagern
  throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList LogValue( ) throws Exception' throws Exception' is not defined for your GUI-Object. Please define first the methode!");
}

public ArrayList MemorizeCaption( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList MemorizeCaption( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public boolean MemorizeExists( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public boolean MemorizeExists( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }
  
  public boolean MemorizeHasFocus( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public boolean MemorizeHasFocus( ) throws Exception' throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }
  
  public boolean MemorizeIsActive( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public boolean MemorizeIsActive( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList MemorizeLabel( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList MemorizeLabel( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList MemorizePlaceholder( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList MemorizePlaceholder( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList MemorizeSelectedValue( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList MemorizeSelectedValue( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList MemorizeTablecellValue( String COL, String ROW )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList MemorizeTablecellValue( String COL, String ROW ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList MemorizeTooltip( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList MemorizeTooltip( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public ArrayList MemorizeValue( )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList MemorizeValue( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

  public void Select( ArrayList fpLsParameter )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method Select() is not defined for your GUI-Object. Please define first the methode!");
  }

  public void SelectMenu(  ) throws Exception
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method SelectMenu() is not defined for your GUI-Object. Please define first the methode!");
  }

  public void SelectMenu( ArrayList Val )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method SelectMenu() is not defined for your GUI-Object. Please define first the methode!");
  }

    public void SelectTablecell( String COL, String ROW )
  {
    // TODO: /todo Meldung in xml-Auslagern
    throw new OKWFrameObjectMethodNotImplemented("The method 'public void SelectTablecell( String COL, String ROW ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
  }

    public void SetFocus( ) throws Exception
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void SetFocus( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public void SetValue(ArrayList Val )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void SetValue( ArrayList Val ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public void TypeKey(ArrayList Val )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void TypeKey( ArrayList Val ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public void TypeKeyTablecell( String COL, String ROW, ArrayList Val )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void TypeKeyTablecell( String COL, String ROW, ArrayList Val ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }
    
    public ArrayList VerifyLabel( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyLabel( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public ArrayList VerifyBadge( )
	{
	  // TODO: /todo Meldung in xml-Auslagern
	  throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyBadge( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
	}

	public ArrayList VerifyBadgeWCM( )
	{
	  // TODO: /todo Meldung in xml-Auslagern
	  throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyBadgeWCM( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
	}

	public ArrayList VerifyBadgeREGX( )
	{
	  // TODO: /todo Meldung in xml-Auslagern
	  throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyBadgeREGX( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
	}

	public ArrayList VerifyPlaceholder( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyPlaceholder( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public Integer VerifyMaxLength( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyMaxLength( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public ArrayList VerifyCaption( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyCaption( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public ArrayList VerifyTooltip( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList VerifyTooltip( )' is not defined for your GUI-Object. Please define first the methode!");
    }

    public ArrayList VerifyValue( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList VerifyValue( )' is not defined for your GUI-Object. Please define first the methode!");
    }

    public ArrayList VerifyTablecellValue( String COL, String ROW )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList VerifyTablecellValue( )' is not defined for your GUI-Object. Please define first the methode!");
    }

    public ArrayList VerifySelectedValue( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public ArrayList VerifySelectedValue( )' is not defined for your GUI-Object. Please define first the methode!");
    }
    
    public Boolean VerifyExists( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public Boolean VerifyExists( )' is not defined for your GUI-Object. Please define first the methode!");
    }

    public Boolean VerifyIsActive()
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public Boolean VerifyIsActive()' is not defined for your GUI-Object. Please define first the methode!");
    }

    public Boolean VerifyHasFocus( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public Boolean VerifyHasFocus( )' is not defined for your GUI-Object. Please define first the methode!");
    }
    
    public Integer VerifyMinLength( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyMinLength( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    public ArrayList VerifyErrorMSG( )
    {
      // TODO: /todo Meldung in xml-Auslagern
      throw new OKWFrameObjectMethodNotImplemented("The method 'public void VerifyErrorMSG( ) throws Exception' is not defined for your GUI-Object. Please define first the methode!");
    }

    /**
     *  Wir benötigt damit in den abgeleitetetn Klassen
     *  'Implicit super constructor AnyChildwindow() is undefined. Must explicitly invoke another constructor'
     */
    public AnyChildwindow( )
    {
        super();
    }
    
    
    public AnyChildwindow( String fpsLocator, OKWLocatorBase... fpLocators )
    {
        //this.setLocator( fpsLocator, fpLocators );
        super (fpsLocator, fpLocators );
    }
   

    /** \~german
     *  Methode wartet auf die Existenz des aktuellen Objektes.
     *  
     *  Wichtig: Methode löst keine Exception aus, wenn das Objekt nicht erscheint!
     *  
     *  @return true, wenn das Objekt vorhanden ist, sonst false.
     *  \~
     * @throws InterruptedException 
     * @throws IOException 
     * @throws SAXException 
     * @throws ParserConfigurationException 
     * @throws JAXBException 
     * @throws XPathExpressionException 
     * 
     *  @author Zoltán Hrabovszki
     *  @date 2013.11.11
     */
    public Boolean WaitForMe()
    {
        // Variables
        Boolean lvbReturn = false;
        Integer Count = 0;

        try
        {
            OKW myOKW = FrameObjectDictionary_Sngltn.getInstance().getOKW( this.getKN() );

            // TimeOut-Werte Ermitteln
            OKW_TimeOut timeout = new OKW_TimeOut( myOKW.WaitForMe_TO(), myOKW.WaitForMe_PT() );

            Count = 0;

            while ( Count <= timeout.getMaxCount() )
            {
                if ( this.getExists() )
                {
                    lvbReturn = true;
                    break;
                }
                else
                {
                    Thread.sleep( timeout.getPT() );
                }
                Count++;
            }
        }
        catch (Exception e)
        {
            // TODO: handle exception
            throw new RuntimeException(e);
        }

        return lvbReturn;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy