18#ifndef GLOBUS_OBJECT_HIERARCHY_H
19#define GLOBUS_OBJECT_HIERARCHY_H
22#include "globus_object.h"
33extern const globus_object_type_t
34 GLOBUS_OBJECT_TYPE_RESOURCE_DEFINITION;
36#define GLOBUS_OBJECT_TYPE_RESOURCE \
37 (&GLOBUS_OBJECT_TYPE_RESOURCE_DEFINITION)
41extern globus_object_t *
42globus_object_construct_resource (
47extern globus_object_t *
48globus_object_initialize_resource (
49 globus_object_t *
object
53extern const globus_object_type_t
54 GLOBUS_OBJECT_TYPE_COMPUTER_DEFINITION;
56#define GLOBUS_OBJECT_TYPE_COMPUTER \
57 (&GLOBUS_OBJECT_TYPE_COMPUTER_DEFINITION)
61extern globus_object_t *
62globus_object_construct_computer (
63 char * computer_hostname);
67extern globus_object_t *
68globus_object_initialize_computer (
69 globus_object_t *
object,
70 char * computer_hostname);
75globus_object_computer_get_computer_hostname (globus_object_t *
object)
81globus_object_computer_set_computer_hostname (
82 globus_object_t *
object,
87extern const globus_object_type_t
88 GLOBUS_OBJECT_TYPE_GRAM_RESOURCE_DEFINITION;
90#define GLOBUS_OBJECT_TYPE_GRAM_RESOURCE \
91 (&GLOBUS_OBJECT_TYPE_GRAM_RESOURCE_DEFINITION)
95extern globus_object_t *
96globus_object_construct_gram_resource (
97 char * computer_hostname,
98 char * gram_resource_contact);
102extern globus_object_t *
103globus_object_initialize_gram_resource (
104 globus_object_t *
object,
105 char * computer_hostname,
106 char * gram_resource_contact);
111globus_object_gram_resource_get_gram_resource_contact (globus_object_t *
object)
117globus_object_gram_resource_set_gram_resource_contact (
118 globus_object_t *
object,
123extern const globus_object_type_t
124 GLOBUS_OBJECT_TYPE_FD_TABLE_DEFINITION;
126#define GLOBUS_OBJECT_TYPE_FD_TABLE \
127 (&GLOBUS_OBJECT_TYPE_FD_TABLE_DEFINITION)
131extern globus_object_t *
132globus_object_construct_fd_table (
137extern globus_object_t *
138globus_object_initialize_fd_table (
139 globus_object_t *
object
143extern const globus_object_type_t
144 GLOBUS_OBJECT_TYPE_STORAGE_DEFINITION;
146#define GLOBUS_OBJECT_TYPE_STORAGE \
147 (&GLOBUS_OBJECT_TYPE_STORAGE_DEFINITION)
151extern globus_object_t *
152globus_object_construct_storage (
157extern globus_object_t *
158globus_object_initialize_storage (
159 globus_object_t *
object,
165globus_object_storage_get_storage_size (globus_object_t *
object)
171globus_object_storage_set_storage_size (
172 globus_object_t *
object,
177extern const globus_object_type_t
178 GLOBUS_OBJECT_TYPE_FILE_DEFINITION;
180#define GLOBUS_OBJECT_TYPE_FILE \
181 (&GLOBUS_OBJECT_TYPE_FILE_DEFINITION)
185extern globus_object_t *
186globus_object_construct_file (
188 char * file_filename,
194extern globus_object_t *
195globus_object_initialize_file (
196 globus_object_t *
object,
198 char * file_filename,
205globus_object_file_get_file_filename (globus_object_t *
object)
211globus_object_file_set_file_filename (
212 globus_object_t *
object,
219globus_object_file_get_file_fd (globus_object_t *
object)
225globus_object_file_set_file_fd (
226 globus_object_t *
object,
233globus_object_file_get_file_filep (globus_object_t *
object)
239globus_object_file_set_file_filep (
240 globus_object_t *
object,
245extern const globus_object_type_t
246 GLOBUS_OBJECT_TYPE_MEMORY_DEFINITION;
248#define GLOBUS_OBJECT_TYPE_MEMORY \
249 (&GLOBUS_OBJECT_TYPE_MEMORY_DEFINITION)
253extern globus_object_t *
254globus_object_construct_memory (
259extern globus_object_t *
260globus_object_initialize_memory (
261 globus_object_t *
object,
265extern const globus_object_type_t
266 GLOBUS_OBJECT_TYPE_BUFFER_POOL_DEFINITION;
268#define GLOBUS_OBJECT_TYPE_BUFFER_POOL \
269 (&GLOBUS_OBJECT_TYPE_BUFFER_POOL_DEFINITION)
273extern globus_object_t *
274globus_object_construct_buffer_pool (
279extern globus_object_t *
280globus_object_initialize_buffer_pool (
281 globus_object_t *
object,
285extern const globus_object_type_t
286 GLOBUS_OBJECT_TYPE_COMMUNICATOR_DEFINITION;
288#define GLOBUS_OBJECT_TYPE_COMMUNICATOR \
289 (&GLOBUS_OBJECT_TYPE_COMMUNICATOR_DEFINITION)
293extern globus_object_t *
294globus_object_construct_communicator (
299extern globus_object_t *
300globus_object_initialize_communicator (
301 globus_object_t *
object
305extern const globus_object_type_t
306 GLOBUS_OBJECT_TYPE_SOCKET_DEFINITION;
308#define GLOBUS_OBJECT_TYPE_SOCKET \
309 (&GLOBUS_OBJECT_TYPE_SOCKET_DEFINITION)
313extern globus_object_t *
314globus_object_construct_socket (
319extern globus_object_t *
320globus_object_initialize_socket (
321 globus_object_t *
object
325extern const globus_object_type_t
326 GLOBUS_OBJECT_TYPE_TASK_DEFINITION;
328#define GLOBUS_OBJECT_TYPE_TASK \
329 (&GLOBUS_OBJECT_TYPE_TASK_DEFINITION)
333extern globus_object_t *
334globus_object_construct_task (
335 globus_object_t * task_request);
339extern globus_object_t *
340globus_object_initialize_task (
341 globus_object_t *
object,
342 globus_object_t * task_request);
346extern globus_object_t *
347globus_object_task_get_task_request (globus_object_t *
object)
353globus_object_task_set_task_request (
354 globus_object_t *
object,
355 globus_object_t * value)
359extern const globus_object_type_t
360 GLOBUS_OBJECT_TYPE_PROCESS_DEFINITION;
362#define GLOBUS_OBJECT_TYPE_PROCESS \
363 (&GLOBUS_OBJECT_TYPE_PROCESS_DEFINITION)
367extern globus_object_t *
368globus_object_construct_process (
369 globus_object_t * task_request,
370 globus_object_t * process_computer,
375extern globus_object_t *
376globus_object_initialize_process (
377 globus_object_t *
object,
378 globus_object_t * task_request,
379 globus_object_t * process_computer,
384extern globus_object_t *
385globus_object_process_get_process_computer (globus_object_t *
object)
391globus_object_process_set_process_computer (
392 globus_object_t *
object,
393 globus_object_t * value)
399globus_object_process_get_process_pid (globus_object_t *
object)
405globus_object_process_set_process_pid (
406 globus_object_t *
object,
411extern const globus_object_type_t
412 GLOBUS_OBJECT_TYPE_GRAMJOB_DEFINITION;
414#define GLOBUS_OBJECT_TYPE_GRAMJOB \
415 (&GLOBUS_OBJECT_TYPE_GRAMJOB_DEFINITION)
419extern globus_object_t *
420globus_object_construct_gramjob (
421 globus_object_t * task_request,
422 globus_object_t * gramjob_gram_resource,
423 char * gramjob_contact);
427extern globus_object_t *
428globus_object_initialize_gramjob (
429 globus_object_t *
object,
430 globus_object_t * task_request,
431 globus_object_t * gramjob_gram_resource,
432 char * gramjob_contact);
436extern globus_object_t *
437globus_object_gramjob_get_gramjob_gram_resource (globus_object_t *
object)
443globus_object_gramjob_set_gramjob_gram_resource (
444 globus_object_t *
object,
445 globus_object_t * value)
451globus_object_gramjob_get_gramjob_contact (globus_object_t *
object)
457globus_object_gramjob_set_gramjob_contact (
458 globus_object_t *
object,
463extern const globus_object_type_t
464 GLOBUS_OBJECT_TYPE_OPERATION_DEFINITION;
466#define GLOBUS_OBJECT_TYPE_OPERATION \
467 (&GLOBUS_OBJECT_TYPE_OPERATION_DEFINITION)
471extern globus_object_t *
472globus_object_construct_operation (
473 globus_object_t * operation_identity,
474 globus_object_t * operation_computer);
478extern globus_object_t *
479globus_object_initialize_operation (
480 globus_object_t *
object,
481 globus_object_t * operation_identity,
482 globus_object_t * operation_computer);
486extern globus_object_t *
487globus_object_operation_get_operation_identity (globus_object_t *
object)
493globus_object_operation_set_operation_identity (
494 globus_object_t *
object,
495 globus_object_t * value)
500extern globus_object_t *
501globus_object_operation_get_operation_computer (globus_object_t *
object)
507globus_object_operation_set_operation_computer (
508 globus_object_t *
object,
509 globus_object_t * value)
513extern const globus_object_type_t
514 GLOBUS_OBJECT_TYPE_READ_DEFINITION;
516#define GLOBUS_OBJECT_TYPE_READ \
517 (&GLOBUS_OBJECT_TYPE_READ_DEFINITION)
521extern globus_object_t *
522globus_object_construct_read (
523 globus_object_t * operation_identity,
524 globus_object_t * operation_computer,
525 globus_object_t * read_resource,
531extern globus_object_t *
532globus_object_initialize_read (
533 globus_object_t *
object,
534 globus_object_t * operation_identity,
535 globus_object_t * operation_computer,
536 globus_object_t * read_resource,
542extern globus_object_t *
543globus_object_read_get_read_resource (globus_object_t *
object)
549globus_object_read_set_read_resource (
550 globus_object_t *
object,
551 globus_object_t * value)
557globus_object_read_get_read_offset (globus_object_t *
object)
563globus_object_read_set_read_offset (
564 globus_object_t *
object,
571globus_object_read_get_read_size (globus_object_t *
object)
577globus_object_read_set_read_size (
578 globus_object_t *
object,
583extern const globus_object_type_t
584 GLOBUS_OBJECT_TYPE_WRITE_DEFINITION;
586#define GLOBUS_OBJECT_TYPE_WRITE \
587 (&GLOBUS_OBJECT_TYPE_WRITE_DEFINITION)
591extern globus_object_t *
592globus_object_construct_write (
593 globus_object_t * operation_identity,
594 globus_object_t * operation_computer,
595 globus_object_t * write_resource,
601extern globus_object_t *
602globus_object_initialize_write (
603 globus_object_t *
object,
604 globus_object_t * operation_identity,
605 globus_object_t * operation_computer,
606 globus_object_t * write_resource,
612extern globus_object_t *
613globus_object_write_get_write_resource (globus_object_t *
object)
619globus_object_write_set_write_resource (
620 globus_object_t *
object,
621 globus_object_t * value)
627globus_object_write_get_write_offset (globus_object_t *
object)
633globus_object_write_set_write_offset (
634 globus_object_t *
object,
641globus_object_write_get_write_size (globus_object_t *
object)
647globus_object_write_set_write_size (
648 globus_object_t *
object,
653extern const globus_object_type_t
654 GLOBUS_OBJECT_TYPE_APPEND_DEFINITION;
656#define GLOBUS_OBJECT_TYPE_APPEND \
657 (&GLOBUS_OBJECT_TYPE_APPEND_DEFINITION)
661extern globus_object_t *
662globus_object_construct_append (
663 globus_object_t * operation_identity,
664 globus_object_t * operation_computer,
665 globus_object_t * write_resource,
671extern globus_object_t *
672globus_object_initialize_append (
673 globus_object_t *
object,
674 globus_object_t * operation_identity,
675 globus_object_t * operation_computer,
676 globus_object_t * write_resource,
681extern const globus_object_type_t
682 GLOBUS_OBJECT_TYPE_EXECUTE_DEFINITION;
684#define GLOBUS_OBJECT_TYPE_EXECUTE \
685 (&GLOBUS_OBJECT_TYPE_EXECUTE_DEFINITION)
689extern globus_object_t *
690globus_object_construct_execute (
691 globus_object_t * operation_identity,
692 globus_object_t * operation_computer,
693 globus_object_t * execute_program);
697extern globus_object_t *
698globus_object_initialize_execute (
699 globus_object_t *
object,
700 globus_object_t * operation_identity,
701 globus_object_t * operation_computer,
702 globus_object_t * execute_program);
706extern globus_object_t *
707globus_object_execute_get_execute_program (globus_object_t *
object)
713globus_object_execute_set_execute_program (
714 globus_object_t *
object,
715 globus_object_t * value)
719extern const globus_object_type_t
720 GLOBUS_OBJECT_TYPE_FORK_DEFINITION;
722#define GLOBUS_OBJECT_TYPE_FORK \
723 (&GLOBUS_OBJECT_TYPE_FORK_DEFINITION)
727extern globus_object_t *
728globus_object_construct_fork (
729 globus_object_t * operation_identity,
730 globus_object_t * operation_computer,
731 globus_object_t * execute_program,
732 globus_object_t * fork_parent);
736extern globus_object_t *
737globus_object_initialize_fork (
738 globus_object_t *
object,
739 globus_object_t * operation_identity,
740 globus_object_t * operation_computer,
741 globus_object_t * execute_program,
742 globus_object_t * fork_parent);
746extern globus_object_t *
747globus_object_fork_get_fork_parent (globus_object_t *
object)
753globus_object_fork_set_fork_parent (
754 globus_object_t *
object,
755 globus_object_t * value)
759extern const globus_object_type_t
760 GLOBUS_OBJECT_TYPE_SYS_EXEC_DEFINITION;
762#define GLOBUS_OBJECT_TYPE_SYS_EXEC \
763 (&GLOBUS_OBJECT_TYPE_SYS_EXEC_DEFINITION)
767extern globus_object_t *
768globus_object_construct_sys_exec (
769 globus_object_t * operation_identity,
770 globus_object_t * operation_computer,
771 globus_object_t * execute_program,
776extern globus_object_t *
777globus_object_initialize_sys_exec (
778 globus_object_t *
object,
779 globus_object_t * operation_identity,
780 globus_object_t * operation_computer,
781 globus_object_t * execute_program,
787globus_object_sys_exec_get_sys_exec_arguments (globus_object_t *
object)
793globus_object_sys_exec_set_sys_exec_arguments (
794 globus_object_t *
object,
799extern const globus_object_type_t
800 GLOBUS_OBJECT_TYPE_SYS_EXECLE_DEFINITION;
802#define GLOBUS_OBJECT_TYPE_SYS_EXECLE \
803 (&GLOBUS_OBJECT_TYPE_SYS_EXECLE_DEFINITION)
807extern globus_object_t *
808globus_object_construct_sys_execle (
809 globus_object_t * operation_identity,
810 globus_object_t * operation_computer,
811 globus_object_t * execute_program,
817extern globus_object_t *
818globus_object_initialize_sys_execle (
819 globus_object_t *
object,
820 globus_object_t * operation_identity,
821 globus_object_t * operation_computer,
822 globus_object_t * execute_program,
829globus_object_sys_execle_get_sys_execle_environment (globus_object_t *
object)
835globus_object_sys_execle_set_sys_execle_environment (
836 globus_object_t *
object,
841extern const globus_object_type_t
842 GLOBUS_OBJECT_TYPE_GRAM_REQUEST_DEFINITION;
844#define GLOBUS_OBJECT_TYPE_GRAM_REQUEST \
845 (&GLOBUS_OBJECT_TYPE_GRAM_REQUEST_DEFINITION)
849extern globus_object_t *
850globus_object_construct_gram_request (
851 globus_object_t * operation_identity,
852 globus_object_t * operation_computer,
853 globus_object_t * execute_program,
854 globus_object_t * gram_request_resource);
858extern globus_object_t *
859globus_object_initialize_gram_request (
860 globus_object_t *
object,
861 globus_object_t * operation_identity,
862 globus_object_t * operation_computer,
863 globus_object_t * execute_program,
864 globus_object_t * gram_request_resource);
868extern globus_object_t *
869globus_object_gram_request_get_gram_request_resource (globus_object_t *
object)
875globus_object_gram_request_set_gram_request_resource (
876 globus_object_t *
object,
877 globus_object_t * value)
881extern const globus_object_type_t
882 GLOBUS_OBJECT_TYPE_OPEN_CREATE_DEFINITION;
884#define GLOBUS_OBJECT_TYPE_OPEN_CREATE \
885 (&GLOBUS_OBJECT_TYPE_OPEN_CREATE_DEFINITION)
889extern globus_object_t *
890globus_object_construct_open_create (
891 globus_object_t * operation_identity,
892 globus_object_t * operation_computer,
893 globus_object_t * open_create_resource);
897extern globus_object_t *
898globus_object_initialize_open_create (
899 globus_object_t *
object,
900 globus_object_t * operation_identity,
901 globus_object_t * operation_computer,
902 globus_object_t * open_create_resource);
906extern globus_object_t *
907globus_object_open_create_get_open_create_resource (globus_object_t *
object)
913globus_object_open_create_set_open_create_resource (
914 globus_object_t *
object,
915 globus_object_t * value)
919extern const globus_object_type_t
920 GLOBUS_OBJECT_TYPE_OPEN_DEFINITION;
922#define GLOBUS_OBJECT_TYPE_OPEN \
923 (&GLOBUS_OBJECT_TYPE_OPEN_DEFINITION)
927extern globus_object_t *
928globus_object_construct_open (
929 globus_object_t * operation_identity,
930 globus_object_t * operation_computer,
931 globus_object_t * open_create_resource);
935extern globus_object_t *
936globus_object_initialize_open (
937 globus_object_t *
object,
938 globus_object_t * operation_identity,
939 globus_object_t * operation_computer,
940 globus_object_t * open_create_resource);
943extern const globus_object_type_t
944 GLOBUS_OBJECT_TYPE_CREATE_DEFINITION;
946#define GLOBUS_OBJECT_TYPE_CREATE \
947 (&GLOBUS_OBJECT_TYPE_CREATE_DEFINITION)
951extern globus_object_t *
952globus_object_construct_create (
953 globus_object_t * operation_identity,
954 globus_object_t * operation_computer,
955 globus_object_t * open_create_resource,
960extern globus_object_t *
961globus_object_initialize_create (
962 globus_object_t *
object,
963 globus_object_t * operation_identity,
964 globus_object_t * operation_computer,
965 globus_object_t * open_create_resource,
971globus_object_create_get_create_mode (globus_object_t *
object)
977globus_object_create_set_create_mode (
978 globus_object_t *
object,
983extern const globus_object_type_t
984 GLOBUS_OBJECT_TYPE_CLOSE_DEFINITION;
986#define GLOBUS_OBJECT_TYPE_CLOSE \
987 (&GLOBUS_OBJECT_TYPE_CLOSE_DEFINITION)
991extern globus_object_t *
992globus_object_construct_close (
993 globus_object_t * operation_identity,
994 globus_object_t * operation_computer,
995 globus_object_t * close_resource);
999extern globus_object_t *
1000globus_object_initialize_close (
1001 globus_object_t *
object,
1002 globus_object_t * operation_identity,
1003 globus_object_t * operation_computer,
1004 globus_object_t * close_resource);
1008extern globus_object_t *
1009globus_object_close_get_close_resource (globus_object_t *
object)
1015globus_object_close_set_close_resource (
1016 globus_object_t *
object,
1017 globus_object_t * value)
1021extern const globus_object_type_t
1022 GLOBUS_OBJECT_TYPE_USERDATA_DEFINITION;
1024#define GLOBUS_OBJECT_TYPE_USERDATA \
1025 (&GLOBUS_OBJECT_TYPE_USERDATA_DEFINITION)
1029extern globus_object_t *
1030globus_object_construct_userdata (
1035extern globus_object_t *
1036globus_object_initialize_userdata (
1037 globus_object_t *
object
1041extern const globus_object_type_t
1042 GLOBUS_OBJECT_TYPE_RSL_DEFINITION;
1044#define GLOBUS_OBJECT_TYPE_RSL \
1045 (&GLOBUS_OBJECT_TYPE_RSL_DEFINITION)
1049extern globus_object_t *
1050globus_object_construct_rsl (
1052 void * rsl_globus_rsl);
1056extern globus_object_t *
1057globus_object_initialize_rsl (
1058 globus_object_t *
object,
1060 void * rsl_globus_rsl);
1065globus_object_rsl_get_rsl_string (globus_object_t *
object)
1071globus_object_rsl_set_rsl_string (
1072 globus_object_t *
object,
1079globus_object_rsl_get_rsl_globus_rsl (globus_object_t *
object)
1085globus_object_rsl_set_rsl_globus_rsl (
1086 globus_object_t *
object,
1091extern const globus_object_type_t
1092 GLOBUS_OBJECT_TYPE_IDENTITY_DEFINITION;
1094#define GLOBUS_OBJECT_TYPE_IDENTITY \
1095 (&GLOBUS_OBJECT_TYPE_IDENTITY_DEFINITION)
1099extern globus_object_t *
1100globus_object_construct_identity (
1105extern globus_object_t *
1106globus_object_initialize_identity (
1107 globus_object_t *
object
1111extern const globus_object_type_t
1112 GLOBUS_OBJECT_TYPE_LOCAL_IDENTITY_DEFINITION;
1114#define GLOBUS_OBJECT_TYPE_LOCAL_IDENTITY \
1115 (&GLOBUS_OBJECT_TYPE_LOCAL_IDENTITY_DEFINITION)
1119extern globus_object_t *
1120globus_object_construct_local_identity (
1121 globus_object_t * local_identity_computer,
1122 char * local_identity_username);
1126extern globus_object_t *
1127globus_object_initialize_local_identity (
1128 globus_object_t *
object,
1129 globus_object_t * local_identity_computer,
1130 char * local_identity_username);
1134extern globus_object_t *
1135globus_object_local_identity_get_local_identity_computer (globus_object_t *
object)
1141globus_object_local_identity_set_local_identity_computer (
1142 globus_object_t *
object,
1143 globus_object_t * value)
1149globus_object_local_identity_get_local_identity_username (globus_object_t *
object)
1155globus_object_local_identity_set_local_identity_username (
1156 globus_object_t *
object,
1161extern const globus_object_type_t
1162 GLOBUS_OBJECT_TYPE_GRID_IDENTITY_DEFINITION;
1164#define GLOBUS_OBJECT_TYPE_GRID_IDENTITY \
1165 (&GLOBUS_OBJECT_TYPE_GRID_IDENTITY_DEFINITION)
1169extern globus_object_t *
1170globus_object_construct_grid_identity (
1171 char * grid_identity_subject);
1175extern globus_object_t *
1176globus_object_initialize_grid_identity (
1177 globus_object_t *
object,
1178 char * grid_identity_subject);
1183globus_object_grid_identity_get_grid_identity_subject (globus_object_t *
object)
1189globus_object_grid_identity_set_grid_identity_subject (
1190 globus_object_t *
object,
1195extern const globus_object_type_t
1196 GLOBUS_OBJECT_TYPE_KERBEROS_IDENTITY_DEFINITION;
1198#define GLOBUS_OBJECT_TYPE_KERBEROS_IDENTITY \
1199 (&GLOBUS_OBJECT_TYPE_KERBEROS_IDENTITY_DEFINITION)
1203extern globus_object_t *
1204globus_object_construct_kerberos_identity (
1205 char * kerberos_identity_principal);
1209extern globus_object_t *
1210globus_object_initialize_kerberos_identity (
1211 globus_object_t *
object,
1212 char * kerberos_identity_principal);
1217globus_object_kerberos_identity_get_kerberos_identity_principal (globus_object_t *
object)
1223globus_object_kerberos_identity_set_kerberos_identity_principal (
1224 globus_object_t *
object,
1229extern const globus_object_type_t
1230 GLOBUS_OBJECT_TYPE_TIME_DEFINITION;
1232#define GLOBUS_OBJECT_TYPE_TIME \
1233 (&GLOBUS_OBJECT_TYPE_TIME_DEFINITION)
1237extern globus_object_t *
1238globus_object_construct_time (
1239 time_t * time_time);
1243extern globus_object_t *
1244globus_object_initialize_time (
1245 globus_object_t *
object,
1246 time_t * time_time);
1251globus_object_time_get_time_time (globus_object_t *
object)
1257globus_object_time_set_time_time (
1258 globus_object_t *
object,
List data type.
Definition globus_list.h:45