From: <t-...@us...> - 2007-03-24 20:38:57
|
Revision: 292 http://svn.sourceforge.net/datagenerator/?rev=292&view=rev Author: t-hex Date: 2007-03-24 13:38:52 -0700 (Sat, 24 Mar 2007) Log Message: ----------- TDataGenerator sinifi yeniden vt baglantisi yaratmak yerine ConnectionManager nesnesini kullanacak. Modified Paths: -------------- trunk/src/lib/DG_Datagenerator.pas trunk/src/lib/generators/DG_CompositeGenerator.pas trunk/src/lib/generators/DG_Generators.pas Modified: trunk/src/lib/DG_Datagenerator.pas =================================================================== --- trunk/src/lib/DG_Datagenerator.pas 2007-03-22 21:02:38 UTC (rev 291) +++ trunk/src/lib/DG_Datagenerator.pas 2007-03-24 20:38:52 UTC (rev 292) @@ -14,7 +14,6 @@ FGenerationCount : Integer; FObservers : TInterfaceList; FProject : TProject; - FConnectionPool : IMap; FStopped: Boolean; protected {** Creates TDGGenerator instances.} @@ -22,8 +21,6 @@ procedure GenerateGenerators; {** Frees the created generator objects} procedure ClearGenerators; - procedure AddConnection(aConnRule : TConnectionRule); - procedure CloseConnections; public constructor Create(aProject: TProject); destructor Destroy; override; @@ -58,7 +55,6 @@ @param ref Reference of the connection @return the connection with the requested ref. Returns nil if no connection is found} - function GetConnectionByRef(const ref : string) : IZConnection; procedure Stop; property Stopped: Boolean read FStopped default False; end; @@ -75,13 +71,12 @@ begin Assert(aProject <> nil, 'Project is nil'); FProject := aProject; - FConnectionPool := THashMap.Create; FObservers := TInterfaceList.Create; FGenerators := TStringList.Create; FGenerationCount := 0; for I := 0 to aProject.ChildCount - 1 do - AddConnection(aProject.ConnectionRule[I]); + ConnectionManager.CreateConnection(aProject.ConnectionRule[I]); end; procedure TDataGenerator.AddObserver(const AnObserver : IObserver); @@ -96,12 +91,6 @@ FObservers := nil; FExporter := nil; - - CloseConnections; - - FConnectionPool.clear; - FConnectionPool := nil; - inherited Destroy; end; @@ -109,7 +98,6 @@ var I : Integer; Generator : TCustomGenerator; -// GeneratorFactory : TDGGeneratorFactory; ColumnRule : TColumnRule; begin ClearGenerators; @@ -158,7 +146,7 @@ if Assigned(FExporter) then begin - FExporter.Connection := GetConnectionByRef(ConnRule.Ref); + FExporter.Connection := ConnectionManager.GetConnection(ConnRule.Ref); FExporter.StartedTable(TableRule); end; @@ -189,17 +177,12 @@ function TDataGenerator.GetObserver(const I : Integer) : IObserver; begin - Result := nil; - if Assigned(FObservers) then - Result := FObservers[I] as IObserver; + Result := FObservers[I] as IObserver; end; function TDataGenerator.GetObserverCount : Integer; begin - if Assigned(FObservers) then - Result := FObservers.Count - else - Result := 0; + Result := FObservers.Count end; procedure TDataGenerator.RemoveObserver(const AnObserver : IObserver); @@ -246,47 +229,6 @@ FGenerators.Clear; end; -procedure TDataGenerator.AddConnection(aConnRule : TConnectionRule); -var - Conn : IZConnection; -begin - Assert( aConnRule <> nil, 'AConnProp is nil'); - - Conn := ConnectionManager.CreateConnection(aConnRule); - FConnectionPool.put(iref(aConnRule.Ref),Conn); - try - Conn.Open; - except - on E : Exception do - raise Exception.Create(Format(_('Error while connecting to database with ref(%s): %s '), - [aConnRule.Ref, E.Message])); - end; - -end; - -procedure TDataGenerator.CloseConnections; -var - Conn: IZConnection; - iter : IIterator; -begin - iter := FConnectionPool.values.iterator; - try - while iter.hasNext do begin - conn := IZConnection(iter.next); - conn.Close; - conn := nil; - end; - finally - iter := nil; - FConnectionPool.Clear; - end; -end; - -function TDataGenerator.GetConnectionByRef(const Ref : string) : IZConnection; -begin - Result := IZConnection(FConnectionPool.get(ref)); -end; - procedure TDataGenerator.NotifyFinish(const AReference, ATableName : string); var I : Integer; @@ -333,7 +275,6 @@ var I : Integer; Generator : TCustomGenerator; - begin for I := 0 to FGenerators.Count - 1 do try Modified: trunk/src/lib/generators/DG_CompositeGenerator.pas =================================================================== --- trunk/src/lib/generators/DG_CompositeGenerator.pas 2007-03-22 21:02:38 UTC (rev 291) +++ trunk/src/lib/generators/DG_CompositeGenerator.pas 2007-03-24 20:38:52 UTC (rev 292) @@ -8,18 +8,13 @@ TCompositeGenerator = class(TCustomGenerator) private FGenerators: TInterfaceList; - - protected - function GetValue: Variant; override; - public constructor Create; destructor Destroy; override; procedure AddGenerator(const AItem : IGenerator); virtual; - property Generators: TInterfaceList read FGenerators; - procedure Generate; override; + function GetValue: Variant; override; end; implementation Modified: trunk/src/lib/generators/DG_Generators.pas =================================================================== --- trunk/src/lib/generators/DG_Generators.pas 2007-03-22 21:02:38 UTC (rev 291) +++ trunk/src/lib/generators/DG_Generators.pas 2007-03-24 20:38:52 UTC (rev 292) @@ -29,10 +29,9 @@ FReturnNullValue : Boolean; FNulls : Integer; FTotal : Integer; - protected - function GetValue: Variant; override; public procedure Generate; override; + function GetValue: Variant; override; constructor Create(const aGenerator: IGenerator; const nullPercentage: TPercentage); virtual; end; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |