ibruby 0.5.0-i586-linux

Sign up to get free protection for your applications and to get access to all the features.
data/lib/src.rb ADDED
@@ -0,0 +1,1795 @@
1
+ #
2
+ # This file is a stand-in that allows for the generation of rdoc documentation
3
+ # for the FireRuby extension for the Ruby programming language. The extension
4
+ # is coded in C and documented with Doxygen comments, so this file is used to
5
+ # generate the native Ruby documentation instead.
6
+ #
7
+
8
+ #
9
+ # This module contains all of the classes and definitions relating to the
10
+ # FireRuby extension for the Ruby language.
11
+ #
12
+ module IBRuby
13
+ #
14
+ # This class provides the exception type used by the IBRuby library.
15
+ #
16
+ class IBRubyException
17
+ #
18
+ # This is the constructor for the IBRubyError class.
19
+ #
20
+ # ==== Parameters
21
+ # message:: A string containing the error message for the object.
22
+ #
23
+ def initialize(message)
24
+ end
25
+
26
+
27
+ #
28
+ # This is the accessor for the error message attribute
29
+ #
30
+ def message
31
+ end
32
+
33
+
34
+ #
35
+ # This is the accessor for the SQL code attribute.
36
+ #
37
+ def sql_code
38
+ end
39
+
40
+
41
+ #
42
+ # This is the accessor for the database code attribute.
43
+ #
44
+ def db_code
45
+ end
46
+
47
+
48
+ #
49
+ # This function generates a simple description string for a FireRubyError
50
+ # object.
51
+ #
52
+ def to_s
53
+ end
54
+ end
55
+
56
+
57
+ #
58
+ # This class represents an existing database that can be connected to. It
59
+ # also provides functionality to allow for the creation of new databases.
60
+ #
61
+ class Database
62
+ #
63
+ # This is the constructor for the Database class.
64
+ #
65
+ # ==== Parameters
66
+ # file:: A string containing the database file specifier. This can
67
+ # include details for a remote server if needed.
68
+ # set:: A string containing the name of the character set to be
69
+ # used with the database. Defaults to nil.
70
+ #
71
+ def initialize(file, set=nil)
72
+ end
73
+
74
+
75
+ #
76
+ # This is the accessor for the database file specification attribute.
77
+ #
78
+ def file
79
+ end
80
+
81
+
82
+ #
83
+ # This method attempts to establish a connection to a database. If
84
+ # successful then a Connection instance is returned. If a block is
85
+ # provided to the method then the connection is closed after the
86
+ # block completes. If a block is specified the connection is provided
87
+ # as a parameter to the block.
88
+ #
89
+ # ==== Parameters
90
+ # user:: The user name to be used in making the connection. This
91
+ # defaults to nil.
92
+ # password:: The password to be used in making the connection. This
93
+ # defaults to nil.
94
+ # options:: A Hash of connection options. This should be made up of
95
+ # key/setting pairs where the keys are from the list that
96
+ # is defined within the Connection class. The settings are
97
+ # particular to the key, see the documentation for the
98
+ # Connection class for more details.
99
+ #
100
+ # ==== Exceptions
101
+ # Exception:: Thrown whenever a problem occurs connecting with the
102
+ # database.
103
+ #
104
+ def connect(user=nil, password=nil, options=nil)
105
+ yield(connection)
106
+ end
107
+
108
+
109
+ #
110
+ # This method attempts to drop the database referred to by the details
111
+ # in a Database object.
112
+ #
113
+ # ==== Parameters
114
+ # user:: The user name to be used in dropping the database.
115
+ # password:: The password to be used in dropping the database.
116
+ #
117
+ # ==== Exceptions
118
+ # FireRubyError:: Thrown whenever a problem occurs dropping the database
119
+ # instance.
120
+ #
121
+ def drop(user, password)
122
+ end
123
+
124
+
125
+ #
126
+ # This method can be used to programmatically created a database file.
127
+ # If successful this method returns a Database object.
128
+ #
129
+ # ==== Parameters
130
+ # file:: A string containing the path and name of the database file
131
+ # to be created.
132
+ # user:: A string containing the user name that will be used in
133
+ # creating the file.
134
+ # password:: A string containing the user password that will be used in
135
+ # creating the file.
136
+ # size:: The page size setting to be used with the new database file.
137
+ # This should be 1024, 2048, 4096 or 8192. Defaults to 1024.
138
+ # set:: The name of the default character set to be assigned to the
139
+ # new database file. If this parameter is specifed then the
140
+ # Database object created by the call will use it to whenever
141
+ # a connection request is made. Defaults to nil.
142
+ #
143
+ # ==== Exceptions
144
+ # Exception:: Generated whenever an invalid parameter is specified or a
145
+ # problem occurs creating the database file.
146
+ #
147
+ def Database.create(file, user, password, size=1024, set=nil)
148
+ end
149
+
150
+
151
+ #
152
+ # This method fetches the name of the character set currently assigned
153
+ # to a Database object. This can return nil to indicate that a explicit
154
+ # character set has not been assigned.
155
+ #
156
+ def character_set
157
+ end
158
+
159
+
160
+ #
161
+ # This method allows the specification of a database character set that
162
+ # will be used when creating connections to a database. The value set by
163
+ # this method can be overridden by providing an alternative in the connect
164
+ # call. To remove a character set specification from a Database object
165
+ # pass nil to this method.
166
+ #
167
+ # ==== Parameters
168
+ # set:: A string containing the name of the database character set.
169
+ #
170
+ def character_set=(set)
171
+ end
172
+ end
173
+
174
+
175
+ #
176
+ # This class represents a connection with a Firebird database.
177
+ #
178
+ class Connection
179
+ # A definition for a connection option. This option should be given a
180
+ # setting of either true or false.
181
+ MARK_DATABASE_DAMAGED = 17
182
+
183
+
184
+ # A definition for a connection option. This option should be given a
185
+ # setting of Connection::WRITE_ASYNCHRONOUS or
186
+ # Connection::WRITE_SYNCHRONOUS
187
+ WRITE_POLICY = 24
188
+
189
+
190
+ # A definition for a connection option. This option should be given a
191
+ # string setting which should be the name of the character set to be
192
+ # used by the connection.
193
+ CHARACTER_SET = 48
194
+
195
+
196
+ # A definition for a connection option. This option should be given a
197
+ # string setting which should be the name of the message file to be used
198
+ # by the connection.
199
+ MESSAGE_FILE = 47
200
+
201
+
202
+ # A definition for a connection option. This option should be given a
203
+ # an integer setting. Values between 1 and 255 are valid, with 75 being
204
+ # the default.
205
+ NUMBER_OF_CACHE_BUFFERS = 5
206
+
207
+
208
+ # A definition for a connection option. This option should be given a
209
+ # string value which should be the database DBA user name.
210
+ DBA_USER_NAME = 19
211
+
212
+
213
+ # A definition for a possible setting to accompany the WRITE_POLICY
214
+ # connection setting.
215
+ WRITE_ASYNCHONOUS = 0
216
+
217
+
218
+ # A definition for a possible setting to accompany the WRITE_POLICY
219
+ # connection setting.
220
+ WRITE_SYNCHONOUS = 1
221
+
222
+
223
+ #
224
+ # This is the constructor for the Connection class.
225
+ #
226
+ # ==== Parameters
227
+ # database:: A reference to the Database object to be connected to.
228
+ # user:: A reference to the user name to be used in making the
229
+ # database connection. Defaults to nil.
230
+ # password:: A reference to the user password to be used in making the
231
+ # connection. Defaults to nil.
232
+ # options:: A Hash containing the options to be applied to the new
233
+ # connection. The hash will contain key/setting values, with
234
+ # the keys being based on the option constants defined within
235
+ # the Connection class. Individual options have differing
236
+ # value requirements. See the option documentation entries
237
+ # for further details. Defaults to nil.
238
+ #
239
+ # ==== Exceptions
240
+ # Exception:: Generated whenever an invalid database is specified to
241
+ # the method or an issue occurs establishing the database
242
+ # connection.
243
+ #
244
+ def initialize(database, user, password, options)
245
+ end
246
+
247
+
248
+ #
249
+ # This method is used to determine whether a Connection object represents
250
+ # an active database connection.
251
+ #
252
+ def open?
253
+ end
254
+
255
+
256
+ #
257
+ # This method is used to determine whether a Connection object represents
258
+ # an inactive database connection.
259
+ #
260
+ def closed?
261
+ end
262
+
263
+
264
+ #
265
+ # This method detaches a Connection object from a database. The object
266
+ # may not be used for database functionality following a successful call
267
+ # to this method. The close method will fail if there are outstanding
268
+ # transactions for a connection.
269
+ #
270
+ # ==== Exceptions
271
+ # Exception:: Generated whenever the connection has at least one open
272
+ # transaction or an error occurs closing the connection.
273
+ #
274
+ def close
275
+ end
276
+
277
+
278
+ #
279
+ # This is the accessor method for the database attribute.
280
+ #
281
+ def database
282
+ end
283
+
284
+
285
+ #
286
+ # This method retrieves the user name that was used in creating a
287
+ # Connection object.
288
+ #
289
+ def user
290
+ end
291
+
292
+
293
+ #
294
+ # This method generates a simple descriptive string for a Connection
295
+ # object.
296
+ #
297
+ def to_s
298
+ end
299
+
300
+
301
+ #
302
+ # This method starts a new transaction against a connection. A successful
303
+ # call to this method returns a Transaction object. The transaction that
304
+ # is started relates to the Connection it was called upon only. To start
305
+ # a transaction that covers multiple connections use the Transaction
306
+ # class. This method accepts a block, taking a single parameter which
307
+ # will be the transaction created. This transaction is committed if the
308
+ # block completes normally or rolls back if an exception is thrown from
309
+ # the block.
310
+ #
311
+ # ==== Exceptions
312
+ # Exception:: Thrown whenever a problem occurs starting the transaction.
313
+ #
314
+ def start_transaction
315
+ yield transaction
316
+ end
317
+
318
+
319
+ #
320
+ # This function executes a SQL statement against a connection. If the
321
+ # statement represented a SQL query then a ResultSet object is returned.
322
+ # If the statement was a non-query SQL statement then an Integer is
323
+ # returned indicating the number of rows affected by the statement. For
324
+ # all other types of statement the method returns nil. The method also
325
+ # accepts a block that takes a single parameter. This block will be
326
+ # executed once for each row in any result set generated.
327
+ #
328
+ # ==== Parameters
329
+ # sql:: The SQL statement to be executed.
330
+ # transaction:: The transaction to execute the SQL statement within.
331
+ #
332
+ # ==== Exceptions
333
+ # Exception:: Generated if an error occurs executing the SQL statement.
334
+ #
335
+ def execute(sql, transaction)
336
+ yield(row)
337
+ end
338
+
339
+
340
+ #
341
+ # This function executes a SQL statement against a connection. This
342
+ # differs from the execute method in that an anonymous transaction is
343
+ # used in executing the statement. The output from this method is the
344
+ # same as for the execute method. The method also accepts a block that
345
+ # takes a single parameter. This block will be executed once for each
346
+ # row in any result set generated.
347
+ #
348
+ # ==== Parameters
349
+ # sql:: The SQL statement to be executed.
350
+ #
351
+ # ==== Exceptions
352
+ # Exception:: Generated whenever a problem occurs executing the SQL
353
+ # statement.
354
+ #
355
+ def execute_immediate(sql)
356
+ yield(row)
357
+ end
358
+ end
359
+
360
+
361
+ #
362
+ # This class represents an InterBase database transaction. There may be
363
+ # multiple transaction outstanding against a connection at any one time.
364
+ #
365
+ class Transaction
366
+ TPB_VERSION_1 = 1
367
+ TPB_VERSION_3 = 3
368
+ TPB_CONSISTENCY = 1
369
+ TPB_CONCURRENCY = 2
370
+ TPB_SHARED = 3
371
+ TPB_PROTECTED = 4
372
+ TPB_EXCLUSIVE = 5
373
+ TPB_WAIT = 6
374
+ TPB_NO_WAIT = 7
375
+ TPB_READ = 8
376
+ TPB_WRITE = 9
377
+ TPB_LOCK_READ = 10
378
+ TPB_LOCK_WRITE = 11
379
+ TPB_VERB_TIME = 12
380
+ TPB_COMMIT_TIME = 13
381
+ TPB_IGNORE_LIMBO = 14
382
+ TPB_READ_COMMITTED = 15
383
+ TPB_AUTO_COMMIT = 16
384
+ TPB_REC_VERSION = 17
385
+ TPB_NO_REC_VERSION = 18
386
+ TPB_RESTART_REQUESTS = 19
387
+ # Transaction parameter buffer value constants.
388
+ TPB_NO_AUTO_UNDO = 20
389
+
390
+
391
+ #
392
+ # This is the constructor for the Transaction class.
393
+ #
394
+ # ==== Parameters
395
+ # connections:: Either a single instance of the Connection class or
396
+ # an array of Connection instances to specify a
397
+ # multi-database transaction.
398
+ #
399
+ # ==== Exceptions
400
+ # Exception:: Generated whenever the method is passed an invalid
401
+ # parameter or a problem occurs creating the transaction.
402
+ #
403
+ def initialize(connections)
404
+ end
405
+
406
+
407
+ #
408
+ # This method is used to determine whether a Transaction object is still
409
+ # valid for use (i.e. commit or rollback has not been called for the
410
+ # Transaction).
411
+ #
412
+ def active?
413
+ end
414
+
415
+
416
+ #
417
+ # This is the accessor for the connections attribute. This method returns
418
+ # an array of the connections that the transaction applies to.
419
+ #
420
+ def connections
421
+ end
422
+
423
+
424
+ #
425
+ # This method is used to determine whether a given Transaction applies to
426
+ # a specified Connection.
427
+ #
428
+ # ==== Parameters
429
+ # connection:: A reference to the Connection object to perform the test
430
+ # for.
431
+ #
432
+ def for_connection?(connection)
433
+ end
434
+
435
+
436
+ #
437
+ # This method commits the details outstanding against a Transaction
438
+ # object. The Transaction object may not be reused after a successful
439
+ # call to this method.
440
+ #
441
+ # ==== Exceptions
442
+ # Exception:: Generated whenever a problem occurs committing the details
443
+ # of the transaction.
444
+ #
445
+ def commit
446
+ end
447
+
448
+
449
+ #
450
+ # This method rolls back the details outstanding against a Transaction
451
+ # object. The Transaction object may not be reused after a successful
452
+ # call to this method.
453
+ #
454
+ # ==== Exceptions
455
+ # Exception:: Generated whenever a problem occurs rolling back the
456
+ # details of the transaction.
457
+ #
458
+ def rollback
459
+ end
460
+
461
+
462
+ #
463
+ # This method executes a SQL statement using a Transaction object. This
464
+ # method will only work whenever a Transaction object applies to a
465
+ # single Connection as it would otherwise be impossible to determine
466
+ # which connection to execute against. If the statement executed was a
467
+ # SQL query then the method returns a ResultSet object. For non-query SQL
468
+ # statements (insert, update or delete) the method returns an Integer that
469
+ # contains the number of rows affected by the statement. For all other
470
+ # statements the method returns nil. The method also accepts a block that
471
+ # takes a single parameter. If the SQL statement was a query the block
472
+ # will be invoked and passed each row retrieved.
473
+ #
474
+ # ==== Parameters
475
+ # sql:: A string containing the SQL statement to be executed.
476
+ #
477
+ # ==== Exceptions
478
+ # Exception:: Generated whenever the Transaction object represents more
479
+ # than one connection or a problem occurs executing the SQL
480
+ # statement.
481
+ #
482
+ def execute(sql)
483
+ yield(row)
484
+ end
485
+
486
+
487
+ #
488
+ # This method allows for the creation of a Transaction object with
489
+ # non-standard settings.
490
+ #
491
+ # ==== Parameters
492
+ # connections:: Either a single Connection object or an array of
493
+ # Connection objects that the new Transaction will
494
+ # be associated with.
495
+ # parameters:: An array of the parameters to be used in creating
496
+ # the new constants. Populate this from the TPB
497
+ # constants defined within the class.
498
+ #
499
+ # ==== Exceptions
500
+ # FireRubyError:: Generated whenever a problem occurs creating the
501
+ # transaction.
502
+ #
503
+ def Transaction.create(connections, parameters)
504
+ end
505
+ end
506
+
507
+
508
+ #
509
+ # This class represents a prepared SQL statement that may be executed more
510
+ # than once.
511
+ #
512
+ class Statement
513
+ # A definition for a SQL statement type constant.
514
+ SELECT_STATEMENT = 1
515
+
516
+ # A definition for a SQL statement type constant.
517
+ INSERT_STATEMENT = 2
518
+
519
+ # A definition for a SQL statement type constant.
520
+ UPDATE_STATEMENT = 3
521
+
522
+ # A definition for a SQL statement type constant.
523
+ DELETE_STATEMENT = 4
524
+
525
+ # A definition for a SQL statement type constant.
526
+ DDL_STATEMENT = 5
527
+
528
+ # A definition for a SQL statement type constant.
529
+ GET_SEGMENT_STATEMENT = 6
530
+
531
+ # A definition for a SQL statement type constant.
532
+ PUT_SEGMENT_STATEMENT = 7
533
+
534
+ # A definition for a SQL statement type constant.
535
+ EXECUTE_PROCEDURE_STATEMENT = 8
536
+
537
+ # A definition for a SQL statement type constant.
538
+ START_TRANSACTION_STATEMENT = 9
539
+
540
+ # A definition for a SQL statement type constant.
541
+ COMMIT_STATEMENT = 10
542
+
543
+ # A definition for a SQL statement type constant.
544
+ ROLLBACK_STATEMENT = 11
545
+
546
+ # A definition for a SQL statement type constant.
547
+ SELECT_FOR_UPDATE_STATEMENT = 12
548
+
549
+ # A definition for a SQL statement type constant.
550
+ SET_GENERATOR_STATEMENT = 13
551
+
552
+ # A definition for a SQL statement type constant.
553
+ SAVE_POINT_STATEMENT = 14
554
+
555
+ #
556
+ # This is the constructor for the Statement class.
557
+ #
558
+ # ==== Parameters
559
+ # connection:: The Connection object that the SQL statement will be
560
+ # executed through.
561
+ # transaction:: The Transaction object that the SQL statement will be
562
+ # executed under.
563
+ # sql:: The SQL statement to be prepared for execution.
564
+ # dialect:: The Firebird dialect to be used in preparing the SQL
565
+ # statement.
566
+ #
567
+ def initialize(connection, transaction, sql, dialect)
568
+ end
569
+
570
+
571
+ #
572
+ # This is the accessor for the connection attribute.
573
+ #
574
+ def connection
575
+ end
576
+
577
+
578
+ #
579
+ # This is the accessor for the transaction attribute.
580
+ #
581
+ def transaction
582
+ end
583
+
584
+
585
+ #
586
+ # This is the accessor for the SQL statement attribute.
587
+ #
588
+ def sql
589
+ end
590
+
591
+
592
+ #
593
+ # This is the accessor for the dialect attribute.
594
+ #
595
+ def dialect
596
+ end
597
+
598
+
599
+ #
600
+ # This method is used to determine the type of a SQL statement. The method
601
+ # will return one of the constant SQL types defined within the class.
602
+ #
603
+ def type
604
+ end
605
+
606
+
607
+ #
608
+ # This method fetches a count of the number of dynamic parameters for
609
+ # a statement object (i.e. the number of parameters that must be provided
610
+ # with values before the SQL statement can be executed).
611
+ #
612
+ def parameter_count
613
+ end
614
+
615
+
616
+ #
617
+ # This method executes the SQL statement within a Statement object. This
618
+ # method returns a ResultSet object if the statement executed was a SQL
619
+ # query. For non-query SQL statements (insert, update or delete) it
620
+ # returns an Integer indicating the number of affected rows. For all other
621
+ # statements the method returns nil. This method accepts a block taking a
622
+ # single parameter. If this block is provided and the statement is a query
623
+ # then the rows returned by the query will be passed, one at a time, to
624
+ # the block.
625
+ #
626
+ # ==== Exception
627
+ # Exception:: Generated if the Statement object actual requires some
628
+ # parameters or a problem occurs executing the SQL statement.
629
+ #
630
+ def execute
631
+ yield row
632
+ end
633
+
634
+
635
+ #
636
+ # This method executes the SQL statement within a Statement object and
637
+ # passes it a set of parameters. Parameterized statements use question
638
+ # marks as place holders for values that may change between calls to
639
+ # execute the statement. This method returns a ResultSet object if the
640
+ # statement executed was a SQL query. If the statement was a non-query SQL
641
+ # statement (insert, update or delete) then the method returns a count of
642
+ # the number of rows affected. For all other types of statement the method
643
+ # returns nil. This method accepts a block taking a single parameter. If
644
+ # this block is provided and the statement is a query then the rows
645
+ # returned by the query will be passed, one at a time, to the block.
646
+ #
647
+ # ==== Parameters
648
+ # parameters:: An array of the parameters for the statement. An effort
649
+ # will be made to convert the values passed in to the
650
+ # appropriate types but no guarantees are made (especially
651
+ # in the case of text fields, which will simply use to_s
652
+ # if the object passed is not a String).
653
+ #
654
+ # ==== Exception
655
+ # Exception:: Generated whenever a problem occurs translating one of the
656
+ # input parameters or executing the SQL statement.
657
+ #
658
+ def execute_for(parameters)
659
+ yield row
660
+ end
661
+
662
+
663
+ #
664
+ # This method releases the database resources associated with a Statement
665
+ # object and should be explicitly called when a Statement object is of
666
+ # no further use.
667
+ #
668
+ # ==== Exceptions
669
+ # FireRubyError:: Generated whenever a problem occurs closing the
670
+ # statement object.
671
+ #
672
+ def close
673
+ end
674
+ end
675
+
676
+
677
+ #
678
+ # This class represents the results of a SQL query executed against a
679
+ # database. The viable lifespan of a ResultSet object is limited by the
680
+ # transaction that was used in it's creation. Once this transaction has
681
+ # been committed or rolled back all related ResultSet object are invalidated
682
+ # and can no longer be used.
683
+ #
684
+ class ResultSet
685
+ include Enumerable
686
+
687
+ #
688
+ # This is the constructor for the ResultSet object.
689
+ #
690
+ # ==== Parameters
691
+ # connection:: A reference to the Connection object that will be used
692
+ # to execute the SQL query.
693
+ # transaction:: A reference to the Transaction object that will be used
694
+ # in executing the SQL query.
695
+ # sql:: A reference to a String containing the SQL query that
696
+ # will be executed.
697
+ # dialect:: A reference to an integer containing the Firebird dialect
698
+ # to be used in executing the SQL statement.
699
+ #
700
+ # ==== Exceptions
701
+ # IBRubyException:: Generated whenever a non-query SQL statement is
702
+ # specified, an invalid connection or transaction is
703
+ # provided or a problem occurs executing the SQL
704
+ # against the database.
705
+ #
706
+ def initialize(connection, transaction, sql, dialect)
707
+ end
708
+
709
+
710
+ #
711
+ # This is the accessor for the connection attribute.
712
+ #
713
+ def connection
714
+ end
715
+
716
+
717
+ #
718
+ # This is the accessor for the transaction attribute.
719
+ #
720
+ def transaction
721
+ end
722
+
723
+
724
+ #
725
+ # This is the accessor for the sql attribute.
726
+ #
727
+ def sql
728
+ end
729
+
730
+
731
+ #
732
+ # This is the accessor for the dialect attribute.
733
+ #
734
+ def dialect
735
+ end
736
+
737
+
738
+ #
739
+ # This method fetches a count of the number of columns in a row of data
740
+ # that the ResultSet can fetch.
741
+ #
742
+ def column_count
743
+ end
744
+
745
+
746
+ #
747
+ # This method fetches the name associated with a specified column for a
748
+ # ResultSet object.
749
+ #
750
+ # ==== Parameters
751
+ # column:: A reference to the column number to fetch the details for.
752
+ # Column numbers start at zero.
753
+ #
754
+ def column_name(column)
755
+ end
756
+
757
+
758
+ #
759
+ # This method fetches the alias associated with a specified column for a
760
+ # ResultSet object.
761
+ #
762
+ # ==== Parameters
763
+ # column:: A reference to the column number to fetch the details for.
764
+ # Column numbers start at zero.
765
+ #
766
+ def column_alias(column)
767
+ end
768
+
769
+
770
+ #
771
+ # This method fetches the table name associated with a specified column
772
+ # for a ResultSet object.
773
+ #
774
+ # ==== Parameters
775
+ # column:: A reference to the column number to fetch the details for.
776
+ # Column numbers start at zero.
777
+ #
778
+ def column_table(column)
779
+ end
780
+
781
+
782
+ #
783
+ # This method fetches a single rows worth of data from the ResultSet
784
+ # object. If the set contains more rows then an array containing the
785
+ # row data will be retrieved. If the ResultSet is exhausted (i.e. all
786
+ # rows have been fetched) then nil is returned. Translation of the row
787
+ # data into an appropriate Ruby type is performed on the row data that
788
+ # is extracted.
789
+ #
790
+ def fetch
791
+ end
792
+
793
+
794
+ #
795
+ # This method is used to determine if all of the rows have been retrieved
796
+ # from a ResultSet object. This method will always return false until
797
+ # the fetch method has been called at least once so it cannot be used to
798
+ # detect a result set that returns no rows.
799
+ #
800
+ def exhausted?
801
+ end
802
+
803
+
804
+ #
805
+ # This method fetches a count of the total number of rows retrieved
806
+ # from a result set.
807
+ #
808
+ def row_count
809
+ end
810
+
811
+
812
+ #
813
+ # This method provides an iterator for the (remaining) rows contained in
814
+ # a ResultSet object.
815
+ #
816
+ # ==== Parameters
817
+ # block:: A block that takes a single parameter. This will be called for
818
+ # and passed each remaining row (as per the fetch method) from
819
+ # the ResultSet.
820
+ #
821
+ def each(&block)
822
+ end
823
+
824
+
825
+ #
826
+ # This method releases the database resources associated with a ResultSet
827
+ # object and should be explicitly called when a ResultSet object is of
828
+ # no further use. The method is implicitly called if the rows available
829
+ # from a ResultSet are exhausted but calling this method at that time
830
+ # will not cause an error.
831
+ #
832
+ # ==== Exceptions
833
+ # FireRubyError:: Generated whenever a problem occurs closing the result
834
+ # set object.
835
+ #
836
+ def close
837
+ end
838
+
839
+ #
840
+ # This method retrieves the base SQL type for a column of data within a
841
+ # ResultSet object. The method returns one of the base types defined in
842
+ # the SQLType class but does not return an actual SQLType object.
843
+ #
844
+ # ==== Parameters
845
+ # index:: The offset from the ResultSet first column of the column to
846
+ # return the type information for.
847
+ #
848
+ def get_base_type(index)
849
+ end
850
+ end
851
+
852
+
853
+ #
854
+ # This class models a row of data fetched as part of a SQL query.
855
+ #
856
+ class Row
857
+ include Enumerable
858
+
859
+ #
860
+ # This is the constructor for the Row class. This method shouldn't really
861
+ # be used as Row objects are automatically created by ResultSets.
862
+ #
863
+ # ==== Parameters
864
+ # results:: The ResultSet object that the row relates to.
865
+ # data:: An array containing the row data values.
866
+ # number:: The row number for the new row.
867
+ #
868
+ def initialize(results, data, number)
869
+ end
870
+
871
+ #
872
+ # This is the accessor for the row number attribute. This will generally
873
+ # reflect the order the row was fetched from the result set in, with 1
874
+ # being the first row retrieved.
875
+ #
876
+ def number
877
+ end
878
+
879
+
880
+ #
881
+ # This method fetches a count of the number of columns of data that are
882
+ # available from a row.
883
+ #
884
+ def column_count
885
+ end
886
+
887
+
888
+ #
889
+ # This method fetches the name of a column within a row of data.
890
+ #
891
+ # ==== Parameters
892
+ # index:: The index of the column to fetch the name for. The first
893
+ # column in the row is at offset zero.
894
+ #
895
+ def column_name(index)
896
+ end
897
+
898
+
899
+ #
900
+ # This method fetches the alias of a column within a row of data.
901
+ #
902
+ # ==== Parameters
903
+ # index:: The index of the column to fetch the alias for. The first
904
+ # column in the row is at offset zero.
905
+ #
906
+ def column_alias(index)
907
+ end
908
+
909
+
910
+ #
911
+ # This method fetches the value associated with a column within a Row
912
+ # object.
913
+ #
914
+ # ==== Parameters
915
+ # index:: Either the offset of the column to retrieve the value of or
916
+ # the alias of the column to retrieve the value of (column alias
917
+ # comparisons are case sensitive).
918
+ #
919
+ def [](index)
920
+ end
921
+
922
+
923
+ #
924
+ # This method iterates over the contents of a Row object. The block
925
+ # specified for the method should accept two parameters; one for the
926
+ # column alias and one for the column value.
927
+ #
928
+ def each
929
+ yield column, vlaue
930
+ end
931
+
932
+
933
+ #
934
+ # This method iterates over the column names for a Row class.
935
+ #
936
+ def each_key
937
+ yield column
938
+ end
939
+
940
+
941
+ #
942
+ # This method iterators over the column values for a Row class.
943
+ #
944
+ def each_value
945
+ yield value
946
+ end
947
+
948
+
949
+ #
950
+ # An implementation of the Hash#fetch method for the Row class. The
951
+ # method accepts a block but this should not be specified if a value
952
+ # for the alternative parameter is specified.
953
+ #
954
+ # ==== Parameters
955
+ # key:: A string containing the column alias to retrieve.
956
+ # alternative:: A reference to the alternative value to be returned if
957
+ # the keyed value is not found. Defaults to nil.
958
+ #
959
+ def fetch(key, alternative=nil)
960
+ yield key
961
+ end
962
+
963
+
964
+ #
965
+ # This method is used to determine whether a Row object contains a given
966
+ # column alias.
967
+ #
968
+ # ==== Parameters
969
+ # name:: A String containing the column name to check for.
970
+ #
971
+ def has_key?(name)
972
+ end
973
+
974
+
975
+ #
976
+ # This method is used to determine whether a Row object contains a given
977
+ # column name.
978
+ #
979
+ # ==== Parameters
980
+ # name:: A String containing the column name to check for.
981
+ #
982
+ def has_column?(name)
983
+ end
984
+
985
+
986
+ #
987
+ # This method is used to determine whether a Row object contains a given
988
+ # column alias.
989
+ #
990
+ # ==== Parameters
991
+ # name:: A String containing the column alias to check for.
992
+ #
993
+ def has_alias?(name)
994
+ end
995
+
996
+
997
+ #
998
+ # This method is used to determine whether a Row object contains a given
999
+ # column value.
1000
+ #
1001
+ # ==== Parameters
1002
+ # value:: A reference to an object value to be checked for.
1003
+ #
1004
+ def has_value?(value)
1005
+ end
1006
+
1007
+
1008
+ #
1009
+ # This method retrieves an array of column aliases for a Row object.
1010
+ #
1011
+ def keys
1012
+ end
1013
+
1014
+
1015
+ #
1016
+ # This method retrieves an array of column names for a Row object.
1017
+ #
1018
+ def names
1019
+ end
1020
+
1021
+
1022
+ #
1023
+ # This method retrieves an array of column aliases for a Row object.
1024
+ #
1025
+ def aliases
1026
+ end
1027
+
1028
+
1029
+ #
1030
+ # This method retrieves an array of column values for a Row object.
1031
+ #
1032
+ def values
1033
+ end
1034
+
1035
+
1036
+ #
1037
+ # This method returns an array of the Row elements for which the specified
1038
+ # block returns true.
1039
+ #
1040
+ def select
1041
+ yield column, value
1042
+ end
1043
+
1044
+
1045
+ #
1046
+ # This method retrieves an Array containing the values from a Row object.
1047
+ # Each value is represented as an Array containing a column name and the
1048
+ # associated column value.
1049
+ #
1050
+ def to_a
1051
+ end
1052
+
1053
+
1054
+ #
1055
+ # This method retrieves a Hash created from a Row objects values. The Row
1056
+ # objects column names will be used as a key on to the column values.
1057
+ #
1058
+ def to_hash
1059
+ end
1060
+
1061
+
1062
+ #
1063
+ # This method returns an array of column values based on a list of column
1064
+ # aliases.
1065
+ #
1066
+ # ==== Parameters
1067
+ # names:: One or more Strings containing the names of the columns to
1068
+ # retrieve values for.
1069
+ #
1070
+ def values_at(*names)
1071
+ end
1072
+
1073
+ #
1074
+ # This method retrieves the base SQL type for a column of data within a
1075
+ # Row object. The method returns one of the base types defined in the
1076
+ # SQLType class but does not return an actual SQLType object.
1077
+ #
1078
+ # ==== Parameters
1079
+ # index:: The offset from the Row first column of the column to return
1080
+ # the type information for.
1081
+ #
1082
+ def get_base_type(index)
1083
+ end
1084
+ end
1085
+
1086
+ #
1087
+ # This class represents Blob data fetched from the database. The class defers
1088
+ # the actual loading of the blob until requested. The class is somewhat basic
1089
+ # and maybe expanded upon in later releases.
1090
+ #
1091
+ class Blob
1092
+ #
1093
+ # This is the constructor for the Blob class. This shouldn't really be
1094
+ # used outside of the FireRuby library.
1095
+ #
1096
+ def initialize
1097
+ end
1098
+
1099
+
1100
+ #
1101
+ # This method loads the entire data set for a blob as a string.
1102
+ #
1103
+ def to_s
1104
+ end
1105
+
1106
+
1107
+ #
1108
+ # This method closes a blob, freeing any resources associated with it.
1109
+ #
1110
+ def close
1111
+ end
1112
+
1113
+
1114
+ #
1115
+ # This method loads the segments of a blob one after another. The blob
1116
+ # segments are passed as strings to the block passed to the method.
1117
+ #
1118
+ def each
1119
+ yield segment
1120
+ end
1121
+ end
1122
+
1123
+
1124
+ #
1125
+ # This class represents a Firebird generator entity.
1126
+ #
1127
+ class Generator
1128
+ #
1129
+ # This is the constructor for the Generator class. Note, this method
1130
+ # assumes that the named generator already exists. If it doesn't then
1131
+ # the object will be constructed but will fail during use.
1132
+ #
1133
+ # ==== Parameters
1134
+ # name:: A string containing the generator name.
1135
+ # connection:: A reference to the Connection object that will be used
1136
+ # to access the generator.
1137
+ #
1138
+ def initialize(name, connection)
1139
+ end
1140
+
1141
+
1142
+ #
1143
+ # This is the accessor for the name attribute.
1144
+ #
1145
+ def name
1146
+ end
1147
+
1148
+
1149
+ #
1150
+ # This is the accessor for the connection attribute.
1151
+ #
1152
+ def connection
1153
+ end
1154
+
1155
+
1156
+ #
1157
+ # This method fetches the last value generator from a generator.
1158
+ #
1159
+ # ==== Exceptions
1160
+ # Exception:: Generated whenever a problem occurs accessing the
1161
+ # database generator.
1162
+ #
1163
+ def last
1164
+ end
1165
+
1166
+
1167
+ #
1168
+ # This method drops a generator from the database. After a successful
1169
+ # call to this method the Generator object may not be used to obtain
1170
+ # values unless it is recreated.
1171
+ #
1172
+ # ==== Exceptions
1173
+ # Exception:: Generated whenever a problem occurs dropping the generator
1174
+ # from the database.
1175
+ #
1176
+ def drop
1177
+ end
1178
+
1179
+
1180
+ #
1181
+ # This method fetches the next value, depending on a specified increment,
1182
+ # from a generator.
1183
+ #
1184
+ # ==== Parameters
1185
+ # step:: The step interval to be applied to the generator to obtain the
1186
+ # next value.
1187
+ #
1188
+ # ==== Exceptions
1189
+ # Exception:: Generated whenever a problem occurs accessing the
1190
+ # database generator.
1191
+ #
1192
+ def next(step)
1193
+ end
1194
+
1195
+
1196
+ #
1197
+ # This method is used to determine whether a named generator exists
1198
+ # within a database.
1199
+ #
1200
+ # ==== Parameters
1201
+ # name:: A string containing the generator name to check for.
1202
+ # connection:: A reference to the Connection object to be used in
1203
+ # performing the check.
1204
+ #
1205
+ # ==== Exceptions
1206
+ # Exception:: Generated whenever a problem occurs determining the
1207
+ # existence of the generator.
1208
+ #
1209
+ def Generator.exists?(name, connection)
1210
+ end
1211
+
1212
+
1213
+ #
1214
+ # This method creates a new generator within a database. This method
1215
+ # returns a Generator object is successful.
1216
+ #
1217
+ # ==== Parameters
1218
+ # name:: A string containing the name for the new generator.
1219
+ # connection:: A reference to the Connection object that will be used to
1220
+ # create the generator.
1221
+ #
1222
+ # ==== Exceptions
1223
+ # Exception:: Generated whenever a problem occurs creating the new
1224
+ # generator in the database.
1225
+ #
1226
+ def Generator.create(name, connection)
1227
+ end
1228
+ end
1229
+
1230
+
1231
+ #
1232
+ # This class represents a connection to the service manager for a Firebird
1233
+ # database server instance. NOTE: This class does not currently work on the
1234
+ # Mac OS X platform.
1235
+ #
1236
+ class ServiceManager
1237
+ #
1238
+ # This is the constructor for the ServiceManager class.
1239
+ #
1240
+ # ==== Parameters
1241
+ # host:: The name of the host supporting the service manager to be
1242
+ # connected with.
1243
+ #
1244
+ def initialize(host)
1245
+ end
1246
+
1247
+
1248
+ #
1249
+ # This method attaches a ServiceManager object to its host service. The
1250
+ # user name used to connect with can affect which services can be accessed
1251
+ # on the server.
1252
+ #
1253
+ # ==== Parameters
1254
+ # user:: A string containing the user name to connect with.
1255
+ # password:: A string containing the user password to connect with.
1256
+ #
1257
+ def connect(user, password)
1258
+ end
1259
+
1260
+
1261
+ #
1262
+ # This method disconnects a previously connected ServiceManager object.
1263
+ #
1264
+ def disconnect
1265
+ end
1266
+
1267
+
1268
+ #
1269
+ # This method is used to determine whether a ServiceManager object has
1270
+ # been connected.
1271
+ #
1272
+ def connected?
1273
+ end
1274
+
1275
+
1276
+ #
1277
+ # This method is used to batch execute a collection of task objects.
1278
+ #
1279
+ # ==== Parameters
1280
+ # tasks:: One or more task objects to be executed by the service manager.
1281
+ #
1282
+ # ==== Exceptions
1283
+ # FireRubyException:: Generated whenever this method is called on a
1284
+ # disconnected service manager or is a problem
1285
+ # occurs executing one of the tasks.
1286
+ #
1287
+ def execute(*tasks)
1288
+ end
1289
+ end
1290
+
1291
+
1292
+ #
1293
+ # This class represents a service manager task to add a new user to a
1294
+ # database instance. NOTE: This class does not currently work on the
1295
+ # Mac OS X platform.
1296
+ #
1297
+ class AddUser
1298
+ # Attribute accessor.
1299
+ attr_reader :user_name, :password, :first_name, :middle_name, :last_name
1300
+
1301
+ # Attribute mutator.
1302
+ attr_writer :user_name, :password, :first_name, :middle_name, :last_name
1303
+
1304
+ #
1305
+ # This is a constructor for the AddUser class.
1306
+ #
1307
+ # ==== Parameters
1308
+ # user_name:: A String containing the user name to be assigned to the
1309
+ # new user.
1310
+ # password:: A String containing the password to be assigned to the
1311
+ # new user.
1312
+ # first_name:: A String containing the first name to be associated with
1313
+ # the new user. Defaults to nil.
1314
+ # middle_name:: A String containing the middle name to be associated
1315
+ # with the new user. Defaults to nil.
1316
+ # last_name:: A String containing the last name to be associated with
1317
+ # the new user. Defaults to nil.
1318
+ #
1319
+ def initialize(user_name, password, firsts_name=nil, middle_name=nil,
1320
+ last_name=nil)
1321
+ end
1322
+
1323
+
1324
+ #
1325
+ # This method executes the add user task against a service manager.
1326
+ #
1327
+ # ==== Parameters
1328
+ # manager:: A reference to the ServiceManager object to execute the task
1329
+ # on.
1330
+ #
1331
+ # ==== Exceptions
1332
+ # FireRubyException:: Generated whenever a disconnected service manager
1333
+ # is specified or an error occurs executing the
1334
+ # task.
1335
+ #
1336
+ def execute(manager)
1337
+ end
1338
+ end
1339
+
1340
+
1341
+ #
1342
+ # This class represents a service manager task to remove an existing user
1343
+ # from a database instance. NOTE: This class does not currently work on the
1344
+ # Mac OS X platform.
1345
+ #
1346
+ class RemoveUser
1347
+ # Attribute accessor.
1348
+ attr_reader :user_name
1349
+
1350
+ # Attribute mutator.
1351
+ attr_writer :user_name
1352
+
1353
+ #
1354
+ # This is a constructor for the RemoveUser class.
1355
+ #
1356
+ # ==== Parameters
1357
+ # user_name:: A String containing the user name to be assigned to the
1358
+ # new user.
1359
+ #
1360
+ def initialize(user_name)
1361
+ end
1362
+
1363
+
1364
+ #
1365
+ # This method executes the remove user task against a service manager.
1366
+ #
1367
+ # ==== Parameters
1368
+ # manager:: A reference to the ServiceManager object to execute the task
1369
+ # on.
1370
+ #
1371
+ # ==== Exceptions
1372
+ # FireRubyException:: Generated whenever a disconnected service manager
1373
+ # is specified or an error occurs executing the
1374
+ # task.
1375
+ #
1376
+ def execute(manager)
1377
+ end
1378
+ end
1379
+
1380
+
1381
+ #
1382
+ # This class represents a service manager task to backup an existing database
1383
+ # on the Firebird server. NOTE: This class does not currently work on the
1384
+ # Mac OS X platform.
1385
+ #
1386
+ class Backup
1387
+ # Attribute accessor.
1388
+ attr_reader :backup_file, :database
1389
+
1390
+ # Attribute mutator.
1391
+ attr_writer :backup_file, :database
1392
+
1393
+ #
1394
+ # This is the constructor for the Backup class.
1395
+ #
1396
+ # ==== Parameters
1397
+ # database:: A String or File giving the path and name (relative to the
1398
+ # database server) of the main database file for the database
1399
+ # to be backed up.
1400
+ # file:: A String or File giving the path and name (relative to the
1401
+ # database server) of the back up file to be generated.
1402
+ #
1403
+ def initialize(database, file)
1404
+ end
1405
+
1406
+
1407
+ #
1408
+ # This method fetches the blocking factor to be used in generating the
1409
+ # back up. This will return nil until it has been explicitly set.
1410
+ #
1411
+ def blocking_factor
1412
+ end
1413
+
1414
+
1415
+ #
1416
+ # This method sets the blocking factor to be used in generating the
1417
+ # back up.
1418
+ #
1419
+ # ==== Parameters
1420
+ # size:: A reference to an integer containing the new back up blocking
1421
+ # factor setting.
1422
+ #
1423
+ def blocking_factor=(size)
1424
+ end
1425
+
1426
+
1427
+ #
1428
+ # This method fetches the ignore checksums setting for a Backup object.
1429
+ #
1430
+ def ignore_checksums
1431
+ end
1432
+
1433
+
1434
+ #
1435
+ # This method is used to set the indicator for whether checksum values
1436
+ # should be ignored in performing a backup.
1437
+ #
1438
+ # ==== Parameters
1439
+ # setting:: True to ignore checksums, false otherwise.
1440
+ #
1441
+ def ignore_checksums=(setting)
1442
+ end
1443
+
1444
+
1445
+ #
1446
+ # This method fetches the ignore limbo setting for a Backup object.
1447
+ #
1448
+ def ignore_limbo
1449
+ end
1450
+
1451
+
1452
+ #
1453
+ # This method is used to set the indicator for whether limbo transactions
1454
+ # should be ignored in performing a backup.
1455
+ #
1456
+ # ==== Parameters
1457
+ # setting:: True to ignore limbo transactions, false otherwise.
1458
+ #
1459
+ def ignore_limbo=(setting)
1460
+ end
1461
+
1462
+
1463
+ #
1464
+ # This method fetches the metadata only setting for a Backup object.
1465
+ #
1466
+ def metadata_only
1467
+ end
1468
+
1469
+
1470
+ #
1471
+ # This method is used to set the indicator for whether a backup stores
1472
+ # only the database metadata.
1473
+ #
1474
+ # ==== Parameters
1475
+ # setting:: True to store only metadata, false otherwise.
1476
+ #
1477
+ def metadata_only=(setting)
1478
+ end
1479
+
1480
+
1481
+ #
1482
+ # This method fetches the garbage collect setting for a Backup object.
1483
+ #
1484
+ def garbage_collect
1485
+ end
1486
+
1487
+
1488
+ #
1489
+ # This method is used to set the indicator for whether the backup will
1490
+ # undertake garbage collection.
1491
+ #
1492
+ # ==== Parameters
1493
+ # setting:: True to perform garbage collection, false otherwise.
1494
+ #
1495
+ def garbage_collect=(setting)
1496
+ end
1497
+
1498
+
1499
+ #
1500
+ # This method fetches the non-transportable setting for a Backup object.
1501
+ #
1502
+ def non_transportable
1503
+ end
1504
+
1505
+
1506
+ #
1507
+ # This method is used to set the indicator for whether backup generated
1508
+ # by the task will be platform specific.
1509
+ #
1510
+ # ==== Parameters
1511
+ # setting:: True to generate a platform specific backup, false otherwise.
1512
+ #
1513
+ def non_transportable=(setting)
1514
+ end
1515
+
1516
+
1517
+ #
1518
+ # This method fetches the convert tables setting for a Backup object.
1519
+ #
1520
+ def convert_tables
1521
+ end
1522
+
1523
+
1524
+ #
1525
+ # This method is used to set the indicator for whether external tables
1526
+ # will be converted to internal tables as part of the backup.
1527
+ #
1528
+ # ==== Parameters
1529
+ # setting:: True to convert external tables, false otherwise.
1530
+ #
1531
+ def convert_tables=(setting)
1532
+ end
1533
+
1534
+
1535
+ #
1536
+ # This method is used to execute a backup task against a service manager.
1537
+ #
1538
+ # ==== Parameters
1539
+ # manager:: A reference to the service manager to execute the backup
1540
+ # task against.
1541
+ #
1542
+ # ==== Exceptions
1543
+ # FireRubyException:: Generated whenever a disconnected service manager
1544
+ # is specified or a problem occurs executing the
1545
+ # task.
1546
+ #
1547
+ def execute(manager)
1548
+ end
1549
+
1550
+
1551
+ #
1552
+ # This method fetches the log value for a Backup task. This value will
1553
+ # always be nil until the task has been executed. After a successful
1554
+ # execution the log value should contain output from the backup task
1555
+ # generated on the server.
1556
+ #
1557
+ def log
1558
+ end
1559
+ end
1560
+
1561
+
1562
+ #
1563
+ # This class represents a service manager task to restore a previously
1564
+ # created database backup on the Firebird server. NOTE: This class does not
1565
+ # currently work on the Mac OS X platform.
1566
+ #
1567
+ class Restore
1568
+ # Attribute accessor.
1569
+ attr_reader :backup_file, :database
1570
+
1571
+ # Attribute mutator.
1572
+ attr_writer :backup_file, :database
1573
+
1574
+ # Access mode constant definition.
1575
+ ACCESS_READ_ONLY = 39
1576
+
1577
+ # Access mode constant definition.
1578
+ ACCESS_READ_WRITE = 40
1579
+
1580
+ # Restore mode constant definition.
1581
+ MODE_CREATE = 0x1000
1582
+
1583
+ # Restore mode constant definition.
1584
+ MODE_REPLACE = 0x2000
1585
+
1586
+ #
1587
+ # This is the constructor for the Restore class.
1588
+ #
1589
+ # ==== Parameters
1590
+ # file:: A String or File containing the path and name (relative to
1591
+ # the server) of the backup file to be used in the restore.
1592
+ # database:: A String or File containing the path and name (relative to
1593
+ # the server) of the database file to be restored.
1594
+ #
1595
+ def initialize(file, database)
1596
+ end
1597
+
1598
+
1599
+ #
1600
+ # This method retrieves the cache buffers setting for a Restore object.
1601
+ # This will be nil until a value is actual set.
1602
+ #
1603
+ def cache_buffers
1604
+ end
1605
+
1606
+
1607
+ #
1608
+ # This method updates the cache buffers setting for a Restore object.
1609
+ #
1610
+ # ==== Parameters
1611
+ # setting:: The new value for the object setting. Should be an integer.
1612
+ #
1613
+ def cache_buffers=(setting)
1614
+ end
1615
+
1616
+
1617
+ #
1618
+ # This method retrieves the page size setting for a Restore object.
1619
+ # This will be nil until a value is actual set.
1620
+ #
1621
+ def page_size
1622
+ end
1623
+
1624
+
1625
+ #
1626
+ # This method updates the page size setting for a Restore object.
1627
+ #
1628
+ # ==== Parameters
1629
+ # setting:: The new value for the object setting. Should be an integer.
1630
+ #
1631
+ def page_size=(setting)
1632
+ end
1633
+
1634
+
1635
+ #
1636
+ # This method retrieves the access mode setting for a Restore object.
1637
+ # This will be nil until a value is actual set.
1638
+ #
1639
+ def access_mode
1640
+ end
1641
+
1642
+
1643
+ #
1644
+ # This method updates the access mode setting for a Restore object.
1645
+ #
1646
+ # ==== Parameters
1647
+ # setting:: The new value for the object setting. This should be one
1648
+ # of Restore::ACCESS_READ_ONLY or Restore::ACCESS_READ_WRITE.
1649
+ #
1650
+ def access_mode=(setting)
1651
+ end
1652
+
1653
+
1654
+ #
1655
+ # This method retrieves the build indices setting for a Restore object.
1656
+ #
1657
+ def build_indices
1658
+ end
1659
+
1660
+
1661
+ #
1662
+ # This method updates the build indices setting for a Restore object.
1663
+ # This value affects whether the various indexes for a database are
1664
+ # restored with the restore task.
1665
+ #
1666
+ # ==== Parameters
1667
+ # setting:: True to rebuild the database indices, false otherwise.
1668
+ #
1669
+ def build_indices=(setting)
1670
+ end
1671
+
1672
+
1673
+ #
1674
+ # This method retrieves the no shadows setting for a Restore object.
1675
+ #
1676
+ def no_shadows
1677
+ end
1678
+
1679
+
1680
+ #
1681
+ # This method updates the no shadows setting for a Restore object.
1682
+ # This value affects whether shadow databases are recreated as part of a
1683
+ # restore.
1684
+ #
1685
+ # ==== Parameters
1686
+ # setting:: True to recreate shadow files, false otherwise.
1687
+ #
1688
+ def no_shadows=(setting)
1689
+ end
1690
+
1691
+
1692
+ #
1693
+ # This method retrieves the validity checks setting for a Restore object.
1694
+ #
1695
+ def check_validity
1696
+ end
1697
+
1698
+
1699
+ #
1700
+ # This method updates the validity checks setting for a Restore object.
1701
+ # This value affects whether the restore performs validity checks on the
1702
+ # database as it is restored.
1703
+ #
1704
+ # ==== Parameters
1705
+ # setting:: True to perform validity checks, false otherwise.
1706
+ #
1707
+ def check_validity=(setting)
1708
+ end
1709
+
1710
+
1711
+ #
1712
+ # This method retrieves the commit tables setting for a Restore object.
1713
+ #
1714
+ def commit_tables
1715
+ end
1716
+
1717
+
1718
+ #
1719
+ # This method updates the commit tables setting for a Restore object.
1720
+ # This value affects whether the restore commits tables as they are
1721
+ # restored.
1722
+ #
1723
+ # ==== Parameters
1724
+ # setting:: True to commit tables as they are restored, false otherwise.
1725
+ #
1726
+ def commit_tables=(setting)
1727
+ end
1728
+
1729
+
1730
+ #
1731
+ # This method retrieves the restore mode setting for a Restore object.
1732
+ #
1733
+ def restore_mode
1734
+ end
1735
+
1736
+
1737
+ #
1738
+ # This method updates the restore mode setting for a Restore object.
1739
+ # This value affects whether the restore will overwrite an existing
1740
+ # database.
1741
+ #
1742
+ # ==== Parameters
1743
+ # setting:: Either Restore::MODE_CREATE (default) or
1744
+ # Restore::MODE_REPLACE.
1745
+ #
1746
+ def restore_mode=(setting)
1747
+ end
1748
+
1749
+
1750
+ #
1751
+ # This method retrieves the use all space setting for a Restore object.
1752
+ #
1753
+ def use_all_space
1754
+ end
1755
+
1756
+
1757
+ #
1758
+ # This method updates the use all space setting for a Restore object.
1759
+ # This value affects whether restore leaves space within the database
1760
+ # file for expansion. This can be switched on for read only databases.
1761
+ #
1762
+ # ==== Parameters
1763
+ # setting:: True leave no default expansion space within the restored
1764
+ # database file, false otherwise.
1765
+ #
1766
+ def use_all_space=(setting)
1767
+ end
1768
+
1769
+
1770
+ #
1771
+ # This method is used to execute a restore task against a service manager.
1772
+ #
1773
+ # ==== Parameters
1774
+ # manager:: A reference to the service manager to execute the restore
1775
+ # task against.
1776
+ #
1777
+ # ==== Exceptions
1778
+ # FireRubyException:: Generated whenever a disconnected service manager
1779
+ # is specified or a problem occurs executing the
1780
+ # task.
1781
+ #
1782
+ def execute(manager)
1783
+ end
1784
+
1785
+
1786
+ #
1787
+ # This method fetches the log value for a Restore task. This value will
1788
+ # always be nil until the task has been executed. After a successful
1789
+ # execution the log value should contain output from the restore task
1790
+ # generated on the server.
1791
+ #
1792
+ def log
1793
+ end
1794
+ end
1795
+ end