/** * Sets the id for the job entry * * @param id * the new id */ public void setID( long id ) { this.id = new LongObjectId( id ); }
/** * This method saves the object ID of the database object (if not null) in the step attributes * * @param id_transformation * @param id_step * @param string * @param database */ public void saveDatabaseMetaStepAttribute( ObjectId id_transformation, ObjectId id_step, String code, DatabaseMeta database ) throws KettleException { ObjectId id = null; if ( database != null ) { id = database.getObjectId(); Long id_database = id == null ? Long.valueOf( -1L ) : new LongObjectId( id ).longValue(); saveStepAttribute( id_transformation, id_step, code, id_database ); } }
@Override public String getId() { return objectId != null ? objectId.toString() : null; }
@Override public boolean equals( Object obj ) { if ( this == obj ) { return true; } if ( !( obj instanceof LongObjectId ) ) { return false; } LongObjectId objectId = (LongObjectId) obj; return id == objectId.longValue(); }
.longValue() ); table.addValue( new ValueMetaInteger( KettleDatabaseRepository.FIELD_ELEMENT_ID_ELEMENT_TYPE ), Long repository.connectionDelegate.getDatabase().closeInsert(); element.setId( elementId.toString() ); insertAttributes( element.getChildren(), elementId, new LongObjectId( 0L ) );
private void insertAttributes( List<IMetaStoreAttribute> children, LongObjectId elementId, LongObjectId parentAttributeId ) throws Exception { for ( IMetaStoreAttribute child : children ) { LongObjectId attributeId = repository.connectionDelegate.getNextID( quoteTable( KettleDatabaseRepository.TABLE_R_ELEMENT_ATTRIBUTE ), quote( KettleDatabaseRepository.FIELD_ELEMENT_ATTRIBUTE_ID_ELEMENT_ATTRIBUTE ) ); RowMetaAndData table = new RowMetaAndData(); table.addValue( new ValueMetaInteger( KettleDatabaseRepository.FIELD_ELEMENT_ATTRIBUTE_ID_ELEMENT_ATTRIBUTE ), attributeId.longValue() ); table.addValue( new ValueMetaInteger( KettleDatabaseRepository.FIELD_ELEMENT_ATTRIBUTE_ID_ELEMENT ), elementId.longValue() ); table.addValue( new ValueMetaInteger( KettleDatabaseRepository.FIELD_ELEMENT_ATTRIBUTE_ID_ELEMENT_ATTRIBUTE_PARENT ), parentAttributeId.longValue() ); table.addValue( new ValueMetaString( KettleDatabaseRepository.FIELD_ELEMENT_ATTRIBUTE_KEY ), child.getId() ); table.addValue( new ValueMetaString( KettleDatabaseRepository.FIELD_ELEMENT_ATTRIBUTE_VALUE ), encodeAttributeValue( child.getValue() ) ); repository.connectionDelegate.getDatabase().prepareInsert( table.getRowMeta(), KettleDatabaseRepository.TABLE_R_ELEMENT_ATTRIBUTE ); repository.connectionDelegate.getDatabase().setValuesInsert( table ); repository.connectionDelegate.getDatabase().insertRow(); repository.connectionDelegate.getDatabase().closeInsert(); child.setId( attributeId.toString() ); } }
public Collection<RowMetaAndData> getElements( LongObjectId elementTypeId ) throws KettleDatabaseException, KettleValueException { List<RowMetaAndData> attrs = new ArrayList<RowMetaAndData>(); String sql = "SELECT * FROM " + quoteTable( KettleDatabaseRepository.TABLE_R_ELEMENT ) + " WHERE " + quote( KettleDatabaseRepository.FIELD_ELEMENT_ID_ELEMENT_TYPE ) + " = " + elementTypeId.getId(); List<Object[]> rows = repository.connectionDelegate.getRows( sql, 0 ); for ( Object[] row : rows ) { RowMetaAndData rowWithMeta = new RowMetaAndData( repository.connectionDelegate.getReturnRowMeta(), row ); long id = rowWithMeta.getInteger( quote( KettleDatabaseRepository.FIELD_ELEMENT_ID_ELEMENT_TYPE ), 0 ); if ( id > 0 ) { attrs.add( rowWithMeta ); } } return attrs; }
@Override public int compareTo( LongObjectId o ) { return Long.valueOf( id ).compareTo( Long.valueOf( o.longValue() ) ); }
public Collection<RowMetaAndData> getElementTypes( LongObjectId namespaceId ) throws KettleDatabaseException, KettleValueException { List<RowMetaAndData> attrs = new ArrayList<RowMetaAndData>(); String sql = "SELECT * FROM " + quoteTable( KettleDatabaseRepository.TABLE_R_ELEMENT_TYPE ) + " WHERE " + quote( KettleDatabaseRepository.FIELD_ELEMENT_TYPE_ID_NAMESPACE ) + " = " + namespaceId.getId(); List<Object[]> rows = repository.connectionDelegate.getRows( sql, 0 ); for ( Object[] row : rows ) { RowMetaAndData rowWithMeta = new RowMetaAndData( repository.connectionDelegate.getReturnRowMeta(), row ); long id = rowWithMeta.getInteger( quote( KettleDatabaseRepository.FIELD_ELEMENT_TYPE_ID_ELEMENT_TYPE ), 0 ); if ( id > 0 ) { attrs.add( rowWithMeta ); } } return attrs; }
public static final ObjectId[] convertLongList( List<Long> list ) { ObjectId[] ids = new ObjectId[ list.size() ]; for ( int i = 0; i < ids.length; i++ ) { ids[ i ] = new LongObjectId( list.get( i ) ); } return ids; }
private synchronized int searchStepAttributeIndexInBuffer( ObjectId id_step, String code, long nr ) throws KettleValueException { Object[] key = new Object[] { new LongObjectId( id_step ).longValue(), // ID_STEP code, // CODE new Long( nr ), // NR }; int index = Collections.binarySearch( stepAttributesBuffer, key, new StepAttributeComparator() ); if ( index >= stepAttributesBuffer.size() || index < 0 ) { return -1; } // // Check this... If it is not in there, we didn't find it! // stepAttributesRowMeta.compare returns 0 when there are conversion issues // so the binarySearch could have 'found' a match when there really isn't // one // Object[] look = stepAttributesBuffer.get( index ); if ( stepAttributesRowMeta.compare( look, key, KEY_POSITIONS ) == 0 ) { return index; } return -1; }
public LongObjectId( ObjectId objectId ) { if ( objectId == null ) { this.id = -1L; // backward compatible } else { if ( objectId instanceof LongObjectId ) { this.id = ( (LongObjectId) objectId ).longValue(); } else { this.id = Long.valueOf( objectId.getId() ); } } }
public Map<String, LongObjectId> getValueToIdMap( String tablename, String idfield, String lookupfield ) throws KettleException { String sql = new StringBuilder( "SELECT " ).append( lookupfield ).append( ", " ).append( idfield ) .append( " FROM " ).append( tablename ).toString(); Map<String, LongObjectId> result = new HashMap<String, LongObjectId>(); for ( Object[] row : callRead( () -> database.getRows( sql, new RowMeta(), new Object[] {}, ResultSet.FETCH_FORWARD, false, -1, null ) ) ) { result.put( String.valueOf( row[ 0 ] ), new LongObjectId( ( (Number) row[ 1 ] ).longValue() ) ); } return result; }
public void addValue( ValueMetaInterface valueMeta, Object valueData ) { if ( valueMeta.isInteger() && ( valueData instanceof ObjectId ) ) { valueData = new LongObjectId( (ObjectId) valueData ).longValue(); } data = RowDataUtil.addValueData( data, rowMeta.size(), valueData ); rowMeta.addValueMeta( valueMeta ); }
public ObjectId[] getIDs( String sql, ObjectId... objectId ) throws KettleException { // Get the prepared statement // PreparedStatement ps = getPreparedStatement( sql ); // Assemble the parameters (if any) // RowMetaInterface parameterMeta = new RowMeta(); Object[] parameterData = new Object[ objectId.length ]; for ( int i = 0; i < objectId.length; i++ ) { parameterMeta.addValueMeta( new ValueMetaInteger( "id" + ( i + 1 ) ) ); parameterData[ i ] = ( (LongObjectId) objectId[ i ] ).longValue(); } return callRead( new Callable<ObjectId[]>() { @Override public ObjectId[] call() throws Exception { ResultSet resultSet = database.openQuery( ps, parameterMeta, parameterData ); List<Object[]> rows = database.getRows( resultSet, 0, null ); if ( Utils.isEmpty( rows ) ) { return new ObjectId[ 0 ]; } RowMetaInterface rowMeta = database.getReturnRowMeta(); ObjectId[] ids = new ObjectId[ rows.size() ]; for ( int i = 0; i < ids.length; i++ ) { Object[] row = rows.get( i ); ids[ i ] = new LongObjectId( rowMeta.getInteger( row, 0 ) ); } return ids; } } ); }
public DatabaseMeta loadDatabaseMetaFromStepAttribute( ObjectId idStep, String code, List<DatabaseMeta> databases ) throws KettleException { long id_database = getStepAttributeInteger( idStep, code ); if ( id_database <= 0 ) { return null; } return DatabaseMeta.findDatabase( databases, new LongObjectId( id_database ) ); }
/** * This method saves the object ID of the condition object (if not null) in the step attributes * * @param id_step * @param code * @param condition */ public void saveConditionStepAttribute( ObjectId id_transformation, ObjectId id_step, String code, Condition condition ) throws KettleException { ObjectId id = null; if ( condition != null ) { id = saveCondition( condition ); Long id_condition = id == null ? Long.valueOf( -1L ) : new LongObjectId( id ).longValue(); saveStepAttribute( id_transformation, id_step, code, id_condition ); insertTransStepCondition( id_transformation, id_step, condition.getObjectId() ); } }
for ( int i = 0; i < objectId.length; i++ ) { parameterMeta.addValueMeta( new ValueMetaInteger( "id" + ( i + 1 ) ) ); parameterData[ i ] = ( (LongObjectId) objectId[ i ] ).longValue();
@Override public void setId( String id ) { this.objectId = new LongObjectId( new StringObjectId( id ) ); }
public synchronized LongObjectId getNextID( String tableName, String fieldName ) throws KettleException { String counterName = tableName + "." + fieldName; Counter counter = Counters.getInstance().getCounter( counterName ); if ( counter == null ) { LongObjectId id = getNextTableID( tableName, fieldName ); counter = new Counter( id.longValue() ); Counters.getInstance().setCounter( counterName, counter ); return new LongObjectId( counter.next() ); } else { return new LongObjectId( counter.next() ); } }