@Test public void equalsDifferentStepsTest() { SlaveStepCopyPartitionDistribution other = new SlaveStepCopyPartitionDistribution(); List<PartitionSchema> schemas = new ArrayList<>(); schemas.add( new PartitionSchema() ); other.setOriginalPartitionSchemas( schemas ); Assert.assertFalse( slaveStep.equals( other ) ); }
/** * Add a partition number to the distribution if it doesn't already exist. * * @param slaveServerName * @param partitionSchemaName * @param stepCopyNr * @return The found or created partition number */ public int addPartition( String slaveServerName, String partitionSchemaName, int stepCopyNr ) { Integer partitionNr = distribution.get( new SlaveStepCopy( slaveServerName, partitionSchemaName, stepCopyNr ) ); if ( partitionNr == null ) { // Not found: add it. // int nr = 0; for ( SlaveStepCopy slaveStepCopy : distribution.keySet() ) { if ( slaveStepCopy.partitionSchemaName.equals( partitionSchemaName ) ) { nr++; } } partitionNr = Integer.valueOf( nr ); addPartition( slaveServerName, partitionSchemaName, stepCopyNr, nr ); } return partitionNr.intValue(); }
public int getPartition( String slaveServerName, String partitionSchemaName, int stepCopyNr ) { return getPartition( new SlaveStepCopy( slaveServerName, partitionSchemaName, stepCopyNr ) ); }
@Test public void hashCodeEqualsTest() { SlaveStepCopyPartitionDistribution other = new SlaveStepCopyPartitionDistribution(); Assert.assertEquals( slaveStep.hashCode(), other.hashCode() ); }
@Test public void equalsTest(){ Assert.assertTrue( slaveStep.equals( new SlaveStepCopyPartitionDistribution() ) ); }
@Test public void hashCodeDifferentTest() { SlaveStepCopyPartitionDistribution other = new SlaveStepCopyPartitionDistribution(); List<PartitionSchema> schemas = new ArrayList<>(); PartitionSchema schema = new PartitionSchema(); schema.setName( "Test" ); schemas.add( schema ); other.setOriginalPartitionSchemas( schemas ); Assert.assertNotEquals( slaveStep.hashCode(), other.hashCode() ); } }
@Before public void setup() { slaveStep = new SlaveStepCopyPartitionDistribution(); }
if ( partitionDistribution != null && !partitionDistribution.getDistribution().isEmpty() ) { String slaveServerName = getVariable( Const.INTERNAL_VARIABLE_SLAVE_SERVER_NAME ); int stepCopyNr = stepcopy; partitionDistribution.getPartition( slaveServerName, partitionSchema.getName(), stepCopyNr ); if ( partitionNr >= 0 ) { String partitionNrString = new DecimalFormat( "000" ).format( partitionNr ); setVariable( Const.INTERNAL_VARIABLE_STEP_PARTITION_NR, partitionNrString ); if ( partitionDistribution.getOriginalPartitionSchemas() != null ) { for ( PartitionSchema originalPartitionSchema : partitionDistribution.getOriginalPartitionSchemas() ) { String slavePartitionSchemaName = TransSplitter.createSlavePartitionSchemaName( originalPartitionSchema.getName() );
slaveStepCopyPartitionDistribution.addPartition( sourceSlaveServer.getName(), previousPartitionSchema.getName(), sourceCopyNr ); slaveStepCopyPartitionDistribution.addPartition( targetSlaveServer.getName(), targetPartitionSchema.getName(), targetCopyNr ); slaveStepCopyPartitionDistribution.addPartition( sourceSlaveServer.getName(), targetPartitionSchema.getName(), targetCopyNr ); .setOriginalPartitionSchemas( originalTransformation.getPartitionSchemas() );
&& !transMeta.getSlaveStepCopyPartitionDistribution().getDistribution().isEmpty(); distribution.getPartition( outputRowSet.getRemoteSlaveServerName(), nextPartitionSchemaName, outputRowSet .getDestinationStepCopy() );
@Test public void equalsDifferentClassesTest() { Assert.assertFalse( slaveStep.equals( Integer.valueOf(5) ) ); }
retval.append( slaveStepCopyPartitionDistribution.getXML() );
stepChangeListeners = new ArrayList<>(); slaveStepCopyPartitionDistribution = new SlaveStepCopyPartitionDistribution();
@Test public void equalsNullTest() { Assert.assertFalse( slaveStep.equals( null ) ); }
slaveStepCopyPartitionDistribution = new SlaveStepCopyPartitionDistribution( partitionDistNode ); } else { slaveStepCopyPartitionDistribution = new SlaveStepCopyPartitionDistribution(); // leave empty
@Test public void equalsSameInstanceTest() { Assert.assertTrue( slaveStep.equals( slaveStep ) ); }
public String getXML() { StringBuilder xml = new StringBuilder( 200 ); xml.append( " " ).append( XMLHandler.openTag( XML_TAG ) ).append( Const.CR ); List<SlaveStepCopy> list = new ArrayList<SlaveStepCopy>( distribution.keySet() ); Collections.sort( list ); for ( SlaveStepCopy copy : list ) { int partition = getPartition( copy ); xml.append( " " ).append( XMLHandler.openTag( "entry" ) ).append( Const.CR ); xml.append( " " ).append( XMLHandler.addTagValue( "slavename", copy.slaveServerName ) ); xml .append( " " ).append( XMLHandler.addTagValue( "partition_schema_name", copy.partitionSchemaName ) ); xml.append( " " ).append( XMLHandler.addTagValue( "stepcopy", copy.stepCopyNr ) ); xml.append( " " ).append( XMLHandler.addTagValue( "partition", partition ) ); xml.append( " " ).append( XMLHandler.closeTag( "entry" ) ).append( Const.CR ); } if ( originalPartitionSchemas != null ) { xml.append( " " ).append( XMLHandler.openTag( "original-partition-schemas" ) ).append( Const.CR ); for ( PartitionSchema partitionSchema : originalPartitionSchemas ) { xml.append( partitionSchema.getXML() ); } xml.append( " " ).append( XMLHandler.closeTag( "original-partition-schemas" ) ).append( Const.CR ); } xml.append( " " ).append( XMLHandler.closeTag( XML_TAG ) ).append( Const.CR ); return xml.toString(); }
public SlaveStepCopyPartitionDistribution( Node node ) { this(); int nrEntries = XMLHandler.countNodes( node, "entry" ); for ( int i = 0; i < nrEntries; i++ ) { Node entryNode = XMLHandler.getSubNodeByNr( node, "entry", i ); String slaveServerName = XMLHandler.getTagValue( entryNode, "slavename" ); String partitionSchemaName = XMLHandler.getTagValue( entryNode, "partition_schema_name" ); int stepCopyNr = Const.toInt( XMLHandler.getTagValue( entryNode, "stepcopy" ), -1 ); int partitionNr = Const.toInt( XMLHandler.getTagValue( entryNode, "partition" ), -1 ); addPartition( slaveServerName, partitionSchemaName, stepCopyNr, partitionNr ); } Node originalPartitionSchemasNode = XMLHandler.getSubNode( node, "original-partition-schemas" ); if ( originalPartitionSchemasNode != null ) { originalPartitionSchemas = new ArrayList<PartitionSchema>(); int nrSchemas = XMLHandler.countNodes( originalPartitionSchemasNode, PartitionSchema.XML_TAG ); for ( int i = 0; i < nrSchemas; i++ ) { Node schemaNode = XMLHandler.getSubNodeByNr( originalPartitionSchemasNode, PartitionSchema.XML_TAG, i ); PartitionSchema originalPartitionSchema = new PartitionSchema( schemaNode ); originalPartitionSchemas.add( originalPartitionSchema ); } } }