Package com.eviware.soapui.model.tree.nodes

Source Code of com.eviware.soapui.model.tree.nodes.MockOperationTreeNode

/*
*  soapUI, copyright (C) 2004-2011 eviware.com
*
*  soapUI is free software; you can redistribute it and/or modify it under the
*  terms of version 2.1 of the GNU Lesser General Public License as published by
*  the Free Software Foundation.
*
*  soapUI 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 Lesser General Public License for more details at gnu.org.
*/

package com.eviware.soapui.model.tree.nodes;

import java.util.ArrayList;
import java.util.List;

import com.eviware.soapui.model.mock.MockOperation;
import com.eviware.soapui.model.mock.MockResponse;
import com.eviware.soapui.model.tree.AbstractModelItemTreeNode;
import com.eviware.soapui.model.tree.SoapUITreeModel;
import com.eviware.soapui.model.tree.SoapUITreeNode;

/**
* SoapUITreeNode for TestStep implementations
*
* @author Ole.Matzura
*/

public class MockOperationTreeNode extends AbstractModelItemTreeNode<MockOperation>
{
  private List<MockResponseTreeNode> mockResponseNodes = new ArrayList<MockResponseTreeNode>();

  public MockOperationTreeNode( MockOperation mockOperation, SoapUITreeModel treeModel )
  {
    super( mockOperation, mockOperation.getMockService(), treeModel );

    for( int c = 0; c < mockOperation.getMockResponseCount(); c++ )
    {
      MockResponse mockResponse = mockOperation.getMockResponseAt( c );
      mockResponseNodes.add( new MockResponseTreeNode( mockResponse, getTreeModel() ) );
    }

    treeModel.mapModelItems( mockResponseNodes );
  }

  @Override
  public void release()
  {
    super.release();

    for( MockResponseTreeNode treeNode : mockResponseNodes )
      treeNode.release();
  }

  public int getChildCount()
  {
    return mockResponseNodes.size();
  }

  public int getIndexOfChild( Object child )
  {
    return mockResponseNodes.indexOf( child );
  }

  public SoapUITreeNode getChildNode( int index )
  {
    return mockResponseNodes.get( index );
  }

  public void mockResponseAdded( MockResponse mockResponse )
  {
    MockResponseTreeNode treeNode = new MockResponseTreeNode( mockResponse, getTreeModel() );
    mockResponseNodes.add( treeNode );
    getTreeModel().notifyNodeInserted( treeNode );
  }

  public void mockResponseRemoved( MockResponse mockResponse )
  {
    SoapUITreeNode treeNode = getTreeModel().getTreeNode( mockResponse );
    if( mockResponseNodes.contains( treeNode ) )
    {
      getTreeModel().notifyNodeRemoved( treeNode );
      mockResponseNodes.remove( treeNode );
    }
    else
      throw new RuntimeException( "Removing unkown mockResponse; " + mockResponse.getName() );
  }
}
TOP

Related Classes of com.eviware.soapui.model.tree.nodes.MockOperationTreeNode

TOP
Copyright © 2018 www.massapi.com. 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.