diff options
author | wjongman | 2010-06-10 20:19:05 +0000 |
---|---|---|
committer | wjongman | 2010-06-10 20:19:05 +0000 |
commit | bbc14bced418f1194f424bd7dd33602cb5319c39 (patch) | |
tree | 8a22f58f3e8aece27c8df19f6ac4e1cd21bb84f6 | |
parent | fe9734e294f6a6afeff6e9290b0328beae6fb9c5 (diff) | |
download | org.eclipse.ecf-bbc14bced418f1194f424bd7dd33602cb5319c39.tar.gz org.eclipse.ecf-bbc14bced418f1194f424bd7dd33602cb5319c39.tar.xz org.eclipse.ecf-bbc14bced418f1194f424bd7dd33602cb5319c39.zip |
Initial Commit
19 files changed, 1485 insertions, 0 deletions
diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.classpath b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.classpath new file mode 100644 index 000000000..042e9a570 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.classpath @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry exported="true" kind="lib" path="com.remainsoftware.osgilloscope_0.1.0.jar"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.project b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.project new file mode 100644 index 000000000..9a42657c1 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.ecf.examples.remoteservices.quotes.consumer</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.jdt.core.prefs b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..5886ef111 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,276 @@ +#Sun Jun 06 16:00:41 CEST 2010 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=false +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=2 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=tab +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.jdt.ui.prefs b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 000000000..146a0d1db --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,4 @@ +#Sun Jun 06 16:00:41 CEST 2010 +eclipse.preferences.version=1 +formatter_profile=_Eclipse [built-in] ++ +formatter_settings_version=11 diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.pde.core.prefs b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 000000000..b09eb1fdc --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,4 @@ +#Sun Jun 06 15:47:02 CEST 2010 +eclipse.preferences.version=1 +pluginProject.extensions=true +resolve.requirebundle=false diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/META-INF/MANIFEST.MF b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/META-INF/MANIFEST.MF new file mode 100644 index 000000000..a8321ce90 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/META-INF/MANIFEST.MF @@ -0,0 +1,22 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Quotes Consumer +Bundle-SymbolicName: org.eclipse.ecf.examples.remoteservices.quotes.consumer;singleton:=true +Bundle-Version: 1.0.0.qualifier +Bundle-Activator: org.eclipse.ecf.examples.remoteservices.quotes.consumer.Activator +Bundle-Vendor: YAZAFATUTU +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Import-Package: org.eclipse.core.runtime;version="3.4.0", + org.eclipse.ecf.core.identity;version="3.0.0", + org.eclipse.ecf.core.security, + org.eclipse.ecf.discovery;version="3.0.0", + org.eclipse.ecf.provider.zookeeper, + org.eclipse.ecf.provider.zookeeper.core, + org.eclipse.ecf.services.quotes, + org.osgi.framework;version="1.3.0" +Bundle-ActivationPolicy: lazy +Bundle-ClassPath: ., + com.remainsoftware.osgilloscope_0.1.0.jar +Require-Bundle: org.eclipse.swt, + org.eclipse.ecf, + org.eclipse.equinox.app diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/build.properties b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/build.properties new file mode 100644 index 000000000..569332ba6 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/build.properties @@ -0,0 +1,7 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + com.remainsoftware.osgilloscope_0.1.0.jar,\ + plugin.xml,\ + images/ diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/com.remainsoftware.osgilloscope_0.1.0.jar b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/com.remainsoftware.osgilloscope_0.1.0.jar Binary files differnew file mode 100644 index 000000000..3f38257e3 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/com.remainsoftware.osgilloscope_0.1.0.jar diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes.bmp b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes.bmp Binary files differnew file mode 100644 index 000000000..c0b34f1ab --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes.bmp diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes32x32x32.bmp b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes32x32x32.bmp Binary files differnew file mode 100644 index 000000000..6db7d005d --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes32x32x32.bmp diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes48x48x32.bmp b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes48x48x32.bmp Binary files differnew file mode 100644 index 000000000..f616439fd --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes48x48x32.bmp diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/plugin.xml b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/plugin.xml new file mode 100644 index 000000000..37b162d24 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/plugin.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.4"?> +<plugin> + <extension + id="id1" + name="Zookeeper Discoverable Quotes Service" + point="org.eclipse.core.runtime.applications"> + <application + cardinality="singleton-global" + thread="main" + visible="true"> + <run + class="org.eclipse.ecf.examples.remoteservices.quotes.consumer.Application"> + </run> + </application> + </extension> + <extension + id="zooquotesgenericconsumer" + name="zooQuotes" + point="org.eclipse.core.runtime.products"> + <product + application="org.eclipse.ecf.examples.remoteservices.quotes.consumer.id1" + description="Zookeeper Discoverable Quotes Service" + name="Zookeeper Discoverable Quotes Service"> + <property + name="appName" + value="Zookeeper Discoverable Quotes Service"> + </property> + </product> + </extension> + +</plugin> diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/projectSet.psf b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/projectSet.psf new file mode 100644 index 000000000..da290e7b3 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/projectSet.psf @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<psf version="2.0">
+<provider id="org.eclipse.team.cvs.core.cvsnature">
+<project reference="1.0,:pserver:anonymous@dev.eclipse.org:/cvsroot/rt,org.eclipse.ecf/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes,org.eclipse.ecf.examples.remoteservices.quotes.consumer"/>
+<project reference="1.0,:pserver:anonymous@ecf1.osuosl.org:/ecf,newsreader/bundles/org.eclipse.ecf.services.quotes,org.eclipse.ecf.services.quotes"/>
+</provider>
+</psf>
\ No newline at end of file diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/com/swtdesigner/SWTResourceManager.java b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/com/swtdesigner/SWTResourceManager.java new file mode 100644 index 000000000..0cf20cb06 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/com/swtdesigner/SWTResourceManager.java @@ -0,0 +1,440 @@ +package com.swtdesigner; + +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.HashMap; +import java.util.Map; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.graphics.Cursor; +import org.eclipse.swt.graphics.Font; +import org.eclipse.swt.graphics.FontData; +import org.eclipse.swt.graphics.GC; +import org.eclipse.swt.graphics.Image; +import org.eclipse.swt.graphics.ImageData; +import org.eclipse.swt.graphics.RGB; +import org.eclipse.swt.graphics.Rectangle; +import org.eclipse.swt.widgets.Display; + +/** + * Utility class for managing OS resources associated with SWT controls such as colors, fonts, images, etc. + * <p> + * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code> method to release the + * operating system resources managed by cached objects when those objects and OS resources are no longer + * needed (e.g. on application shutdown) + * <p> + * This class may be freely distributed as part of any application or plugin. + * <p> + * Copyright (c) 2003 - 2007, Instantiations, Inc. <br> + * All Rights Reserved + * + * @author scheglov_ke + * @author Dan Rubel + */ +public class SWTResourceManager { + //////////////////////////////////////////////////////////////////////////// + // + // Color + // + //////////////////////////////////////////////////////////////////////////// + private static Map<RGB, Color> m_colorMap = new HashMap<RGB, Color>(); + /** + * Returns the system {@link Color} matching the specific ID. + * + * @param systemColorID + * the ID value for the color + * @return the system {@link Color} matching the specific ID + */ + public static Color getColor(int systemColorID) { + Display display = Display.getCurrent(); + return display.getSystemColor(systemColorID); + } + /** + * Returns a {@link Color} given its red, green and blue component values. + * + * @param r + * the red component of the color + * @param g + * the green component of the color + * @param b + * the blue component of the color + * @return the {@link Color} matching the given red, green and blue component values + */ + public static Color getColor(int r, int g, int b) { + return getColor(new RGB(r, g, b)); + } + /** + * Returns a {@link Color} given its RGB value. + * + * @param rgb + * the {@link RGB} value of the color + * @return the {@link Color} matching the RGB value + */ + public static Color getColor(RGB rgb) { + Color color = m_colorMap.get(rgb); + if (color == null) { + Display display = Display.getCurrent(); + color = new Color(display, rgb); + m_colorMap.put(rgb, color); + } + return color; + } + /** + * Dispose of all the cached {@link Color}'s. + */ + public static void disposeColors() { + for (Color color : m_colorMap.values()) { + color.dispose(); + } + m_colorMap.clear(); + } + //////////////////////////////////////////////////////////////////////////// + // + // Image + // + //////////////////////////////////////////////////////////////////////////// + /** + * Maps image paths to images. + */ + private static Map<String, Image> m_imageMap = new HashMap<String, Image>(); + /** + * Returns an {@link Image} encoded by the specified {@link InputStream}. + * + * @param stream + * the {@link InputStream} encoding the image data + * @return the {@link Image} encoded by the specified input stream + */ + protected static Image getImage(InputStream stream) throws IOException { + try { + Display display = Display.getCurrent(); + ImageData data = new ImageData(stream); + if (data.transparentPixel > 0) { + return new Image(display, data, data.getTransparencyMask()); + } + return new Image(display, data); + } finally { + stream.close(); + } + } + /** + * Returns an {@link Image} stored in the file at the specified path. + * + * @param path + * the path to the image file + * @return the {@link Image} stored in the file at the specified path + */ + public static Image getImage(String path) { + Image image = m_imageMap.get(path); + if (image == null) { + try { + image = getImage(new FileInputStream(path)); + m_imageMap.put(path, image); + } catch (Exception e) { + image = getMissingImage(); + m_imageMap.put(path, image); + } + } + return image; + } + /** + * Returns an {@link Image} stored in the file at the specified path relative to the specified class. + * + * @param clazz + * the {@link Class} relative to which to find the image + * @param path + * the path to the image file, if starts with <code>'/'</code> + * @return the {@link Image} stored in the file at the specified path + */ + public static Image getImage(Class<?> clazz, String path) { + String key = clazz.getName() + '|' + path; + Image image = m_imageMap.get(key); + if (image == null) { + try { + image = getImage(clazz.getResourceAsStream(path)); + m_imageMap.put(key, image); + } catch (Exception e) { + image = getMissingImage(); + m_imageMap.put(key, image); + } + } + return image; + } + private static final int MISSING_IMAGE_SIZE = 10; + /** + * @return the small {@link Image} that can be used as placeholder for missing image. + */ + private static Image getMissingImage() { + Image image = new Image(Display.getCurrent(), MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE); + // + GC gc = new GC(image); + gc.setBackground(getColor(SWT.COLOR_RED)); + gc.fillRectangle(0, 0, MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE); + gc.dispose(); + // + return image; + } + /** + * Style constant for placing decorator image in top left corner of base image. + */ + public static final int TOP_LEFT = 1; + /** + * Style constant for placing decorator image in top right corner of base image. + */ + public static final int TOP_RIGHT = 2; + /** + * Style constant for placing decorator image in bottom left corner of base image. + */ + public static final int BOTTOM_LEFT = 3; + /** + * Style constant for placing decorator image in bottom right corner of base image. + */ + public static final int BOTTOM_RIGHT = 4; + /** + * Internal value. + */ + protected static final int LAST_CORNER_KEY = 5; + /** + * Maps images to decorated images. + */ + @SuppressWarnings("unchecked") + private static Map<Image, Map<Image, Image>>[] m_decoratedImageMap = new Map[LAST_CORNER_KEY]; + /** + * Returns an {@link Image} composed of a base image decorated by another image. + * + * @param baseImage + * the base {@link Image} that should be decorated + * @param decorator + * the {@link Image} to decorate the base image + * @return {@link Image} The resulting decorated image + */ + public static Image decorateImage(Image baseImage, Image decorator) { + return decorateImage(baseImage, decorator, BOTTOM_RIGHT); + } + /** + * Returns an {@link Image} composed of a base image decorated by another image. + * + * @param baseImage + * the base {@link Image} that should be decorated + * @param decorator + * the {@link Image} to decorate the base image + * @param corner + * the corner to place decorator image + * @return the resulting decorated {@link Image} + */ + public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) { + if (corner <= 0 || corner >= LAST_CORNER_KEY) { + throw new IllegalArgumentException("Wrong decorate corner"); + } + Map<Image, Map<Image, Image>> cornerDecoratedImageMap = m_decoratedImageMap[corner]; + if (cornerDecoratedImageMap == null) { + cornerDecoratedImageMap = new HashMap<Image, Map<Image, Image>>(); + m_decoratedImageMap[corner] = cornerDecoratedImageMap; + } + Map<Image, Image> decoratedMap = cornerDecoratedImageMap.get(baseImage); + if (decoratedMap == null) { + decoratedMap = new HashMap<Image, Image>(); + cornerDecoratedImageMap.put(baseImage, decoratedMap); + } + // + Image result = decoratedMap.get(decorator); + if (result == null) { + Rectangle bib = baseImage.getBounds(); + Rectangle dib = decorator.getBounds(); + // + result = new Image(Display.getCurrent(), bib.width, bib.height); + // + GC gc = new GC(result); + gc.drawImage(baseImage, 0, 0); + if (corner == TOP_LEFT) { + gc.drawImage(decorator, 0, 0); + } else if (corner == TOP_RIGHT) { + gc.drawImage(decorator, bib.width - dib.width, 0); + } else if (corner == BOTTOM_LEFT) { + gc.drawImage(decorator, 0, bib.height - dib.height); + } else if (corner == BOTTOM_RIGHT) { + gc.drawImage(decorator, bib.width - dib.width, bib.height - dib.height); + } + gc.dispose(); + // + decoratedMap.put(decorator, result); + } + return result; + } + /** + * Dispose all of the cached {@link Image}'s. + */ + public static void disposeImages() { + // dispose loaded images + { + for (Image image : m_imageMap.values()) { + image.dispose(); + } + m_imageMap.clear(); + } + // dispose decorated images + for (int i = 0; i < m_decoratedImageMap.length; i++) { + Map<Image, Map<Image, Image>> cornerDecoratedImageMap = m_decoratedImageMap[i]; + if (cornerDecoratedImageMap != null) { + for (Map<Image, Image> decoratedMap : cornerDecoratedImageMap.values()) { + for (Image image : decoratedMap.values()) { + image.dispose(); + } + decoratedMap.clear(); + } + cornerDecoratedImageMap.clear(); + } + } + } + //////////////////////////////////////////////////////////////////////////// + // + // Font + // + //////////////////////////////////////////////////////////////////////////// + /** + * Maps font names to fonts. + */ + private static Map<String, Font> m_fontMap = new HashMap<String, Font>(); + /** + * Maps fonts to their bold versions. + */ + private static Map<Font, Font> m_fontToBoldFontMap = new HashMap<Font, Font>(); + /** + * Returns a {@link Font} based on its name, height and style. + * + * @param name + * the name of the font + * @param height + * the height of the font + * @param style + * the style of the font + * @return {@link Font} The font matching the name, height and style + */ + public static Font getFont(String name, int height, int style) { + return getFont(name, height, style, false, false); + } + /** + * Returns a {@link Font} based on its name, height and style. Windows-specific strikeout and underline + * flags are also supported. + * + * @param name + * the name of the font + * @param size + * the size of the font + * @param style + * the style of the font + * @param strikeout + * the strikeout flag (warning: Windows only) + * @param underline + * the underline flag (warning: Windows only) + * @return {@link Font} The font matching the name, height, style, strikeout and underline + */ + public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) { + String fontName = name + '|' + size + '|' + style + '|' + strikeout + '|' + underline; + Font font = m_fontMap.get(fontName); + if (font == null) { + FontData fontData = new FontData(name, size, style); + if (strikeout || underline) { + try { + Class<?> logFontClass = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); //$NON-NLS-1$ + Object logFont = FontData.class.getField("data").get(fontData); //$NON-NLS-1$ + if (logFont != null && logFontClass != null) { + if (strikeout) { + logFontClass.getField("lfStrikeOut").set(logFont, Byte.valueOf((byte) 1)); //$NON-NLS-1$ + } + if (underline) { + logFontClass.getField("lfUnderline").set(logFont, Byte.valueOf((byte) 1)); //$NON-NLS-1$ + } + } + } catch (Throwable e) { + System.err.println("Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); //$NON-NLS-1$ //$NON-NLS-2$ + } + } + font = new Font(Display.getCurrent(), fontData); + m_fontMap.put(fontName, font); + } + return font; + } + /** + * Returns a bold version of the given {@link Font}. + * + * @param baseFont + * the {@link Font} for which a bold version is desired + * @return the bold version of the given {@link Font} + */ + public static Font getBoldFont(Font baseFont) { + Font font = m_fontToBoldFontMap.get(baseFont); + if (font == null) { + FontData fontDatas[] = baseFont.getFontData(); + FontData data = fontDatas[0]; + font = new Font(Display.getCurrent(), data.getName(), data.getHeight(), SWT.BOLD); + m_fontToBoldFontMap.put(baseFont, font); + } + return font; + } + /** + * Dispose all of the cached {@link Font}'s. + */ + public static void disposeFonts() { + // clear fonts + for (Font font : m_fontMap.values()) { + font.dispose(); + } + m_fontMap.clear(); + // clear bold fonts + for (Font font : m_fontToBoldFontMap.values()) { + font.dispose(); + } + m_fontToBoldFontMap.clear(); + } + //////////////////////////////////////////////////////////////////////////// + // + // Cursor + // + //////////////////////////////////////////////////////////////////////////// + /** + * Maps IDs to cursors. + */ + private static Map<Integer, Cursor> m_idToCursorMap = new HashMap<Integer, Cursor>(); + /** + * Returns the system cursor matching the specific ID. + * + * @param id + * int The ID value for the cursor + * @return Cursor The system cursor matching the specific ID + */ + public static Cursor getCursor(int id) { + Integer key = Integer.valueOf(id); + Cursor cursor = m_idToCursorMap.get(key); + if (cursor == null) { + cursor = new Cursor(Display.getDefault(), id); + m_idToCursorMap.put(key, cursor); + } + return cursor; + } + /** + * Dispose all of the cached cursors. + */ + public static void disposeCursors() { + for (Cursor cursor : m_idToCursorMap.values()) { + cursor.dispose(); + } + m_idToCursorMap.clear(); + } + //////////////////////////////////////////////////////////////////////////// + // + // General + // + //////////////////////////////////////////////////////////////////////////// + /** + * Dispose of cached objects and their underlying OS resources. This should only be called when the cached + * objects are no longer needed (e.g. on application shutdown). + */ + public static void dispose() { + disposeColors(); + disposeImages(); + disposeFonts(); + disposeCursors(); + } +}
\ No newline at end of file diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Activator.java b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Activator.java new file mode 100644 index 000000000..0885fe4bf --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Activator.java @@ -0,0 +1,36 @@ +package org.eclipse.ecf.examples.remoteservices.quotes.consumer; + +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +public class Activator implements BundleActivator { + + private static BundleContext context; + + static BundleContext getContext() { + return context; + } + + /* + * (non-Javadoc) + * + * @see + * org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext + * ) + */ + public void start(BundleContext bundleContext) throws Exception { + Activator.context = bundleContext; + + } + + /* + * (non-Javadoc) + * + * @see + * org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext) + */ + public void stop(BundleContext bundleContext) throws Exception { + Activator.context = null; + } + +} diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Application.java b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Application.java new file mode 100644 index 000000000..b2a7cb15a --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Application.java @@ -0,0 +1,140 @@ +package org.eclipse.ecf.examples.remoteservices.quotes.consumer; + +import java.lang.reflect.Method; + +import org.eclipse.ecf.services.quotes.QuoteService; +import org.eclipse.equinox.app.IApplication; +import org.eclipse.equinox.app.IApplicationContext; +import org.eclipse.swt.widgets.Display; +import org.osgi.framework.ServiceEvent; +import org.osgi.framework.ServiceListener; +import org.osgi.framework.ServiceReference; + +public class Application implements IApplication { + + private ConsumerUI ui; + + @Override + public Object start(IApplicationContext context) throws Exception { + + System.out.println("Started"); + + ui = new ConsumerUI(null); + addListener(); + ui.main(null); + + return null; + } + + @Override + public void stop() { + System.out.println("Stopped"); + + } + + private void addListener() { + Activator.getContext().addServiceListener(new ServiceListener() { + + @Override + public void serviceChanged(final ServiceEvent event) { + + /* + * Do only for registrations + */ + if (event.getType() == ServiceEvent.REGISTERED) { + + try { + Object obj = Activator.getContext().getService(event.getServiceReference()); + + /* + * Post all the information we have on this service + */ + fillInfo(event.getServiceReference(), obj); + + /* + * If we know this service + */ + if (obj instanceof QuoteService) { + final QuoteService service = (QuoteService) Activator.getContext().getService( + event.getServiceReference()); + + final String sLabel = service.getServiceDescription(); + final String sQuote = service.getRandomQuote(); + + Display.getDefault().asyncExec(new Runnable() { + + @Override + public void run() { + ui.getLabel().setText(sLabel); + ui.getStyledText().setText(sQuote); + ui.getDispatcher().setValue(1); + ui.redraw(); + + } + }); + + } + } catch (final Exception e) { + Display.getDefault().asyncExec(new Runnable() { + + @Override + public void run() { + ui.getLabel().setText(e.getLocalizedMessage() + ""); + ui.getStyledText().setText(""); + ui.getDispatcher().setValue(-1); + ui.redraw(); + + } + }); + } + + } + } + + private void fillInfo(ServiceReference s, Object obj) { + final StringBuffer infoBuf = new StringBuffer(); + infoBuf.append("ServiceReference Info\n\t"); + infoBuf.append("Bundle:\t").append(s.getBundle().getSymbolicName()).append("\n\n\t"); + for (String key : s.getPropertyKeys()) + if (s.getProperty(key) instanceof Object[]) + for (int i = 0; i < ((Object[]) s.getProperty(key)).length; i++) + if (i == 0) + infoBuf.append("Property:\t").append(key).append("=") + .append(((Object[]) s.getProperty(key))[i].toString()).append("\n\t"); + else + infoBuf.append("\t\t\t").append(key).append("=") + .append(((Object[]) s.getProperty(key))[i]).append("\n\t"); + else + infoBuf.append("Property:\t").append(key).append("=").append(s.getProperty(key)).append("\n\t"); + infoBuf.append("\nService Info\n\t"); + infoBuf.append("Class:\t").append(obj.getClass().getName()).append("\n\t"); + infoBuf.append("\nImplements").append("\n\t"); + for (Class<?> i : obj.getClass().getInterfaces()) + infoBuf.append("Class:\t").append(i.getName()).append("\n\t"); + infoBuf.append("\nSupers").append("\n\t"); + Class<?> sc = obj.getClass().getSuperclass(); + while (sc != null && sc != Object.class) { + infoBuf.append("Class:\t").append(sc.getName()).append("\n\t"); + sc = sc.getClass().getSuperclass(); + } + infoBuf.append("\nMethods").append("\n\t"); + for (Method m : obj.getClass().getMethods()) { + infoBuf.append("Method:\t").append("(").append(m.getReturnType()).append(") ").append(m.getName()) + .append("("); + for (Class<?> c : m.getParameterTypes()) + infoBuf.append(c.getSimpleName()).append(" "); + infoBuf.append(")\n\t"); + } + + Display.getDefault().asyncExec(new Runnable() { + + @Override + public void run() { + ui.getInfo().setText(infoBuf.toString()); + + } + }); + } + }); + } +} diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/ConsumerUI.java b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/ConsumerUI.java new file mode 100644 index 000000000..99da50fdb --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/ConsumerUI.java @@ -0,0 +1,206 @@ +package org.eclipse.ecf.examples.remoteservices.quotes.consumer; + +import org.eclipse.ecf.core.ContainerCreateException; +import org.eclipse.ecf.core.ContainerFactory; +import org.eclipse.ecf.core.IContainer; +import org.eclipse.ecf.provider.zookeeper.core.ZooDiscoveryContainerInstantiator; +import org.eclipse.swt.SWT; +import org.eclipse.swt.custom.StyledText; +import org.eclipse.swt.events.MouseAdapter; +import org.eclipse.swt.events.MouseEvent; +import org.eclipse.swt.graphics.Font; +import org.eclipse.swt.layout.FillLayout; +import org.eclipse.swt.layout.GridData; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Button; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Display; +import org.eclipse.swt.widgets.Label; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.swt.widgets.Text; + +import com.remainsoftware.osgilloscope.OSGilloscope; +import org.eclipse.swt.widgets.TabFolder; +import org.eclipse.swt.widgets.TabItem; + +public class ConsumerUI extends Shell { + private Text servers; + private Label label; + private StyledText styledText; + private OSGilloscope gilloscope; + private Dispatcher dispatcher; + private Text info; + + /** + * Launch the application. + * + * @param args + */ + public void main(String args[]) { + try { + // Display display = Display.getDefault(); + // ConsumerUI shell = new ConsumerUI(display); + getShell().open(); + getShell().layout(); + while (!getShell().isDisposed()) { + if (!getDisplay().readAndDispatch()) { + getDisplay().sleep(); + } + } + getDisplay().dispose(); + } catch (Exception e) { + } + } + + /** + * Create the shell. + * + * @param display + */ + public ConsumerUI(Display display) { + super(display, SWT.SHELL_TRIM); + setLayout(new FillLayout(SWT.HORIZONTAL)); + + Composite composite = new Composite(this, SWT.NONE); + composite.setLayout(new GridLayout(3, false)); + + Label lblCommaSeperatedList = new Label(composite, SWT.NONE); + lblCommaSeperatedList.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, + false, false, 1, 1)); + lblCommaSeperatedList.setText("Servers"); + + servers = (new Text(composite, SWT.BORDER)); + getServers().setText("yazafatutu.com"); + getServers().setLayoutData( + new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); + + Button btnConnect = new Button(composite, SWT.NONE); + btnConnect.addMouseListener(new MouseAdapter() { + @Override + public void mouseUp(MouseEvent e) { + startZookeeper(); + } + }); + btnConnect.setText("Connect"); + + TabFolder tabFolder = new TabFolder(composite, SWT.BOTTOM); + tabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1)); + + TabItem tbtmUi = new TabItem(tabFolder, SWT.NONE); + tbtmUi.setText("UI"); + + Composite composite_2 = new Composite(tabFolder, SWT.NONE); + tbtmUi.setControl(composite_2); + composite_2.setLayout(new GridLayout(1, false)); + + gilloscope = new OSGilloscope(composite_2, SWT.NONE); + GridData gd_gilloscope = new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1); + gd_gilloscope.heightHint = 100; + gilloscope.setLayoutData(gd_gilloscope); + + Composite composite_1 = new Composite(composite_2, SWT.BORDER); + composite_1.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); + composite_1.setLayout(new GridLayout(1, false)); + + label = (new Label(composite_1, SWT.NONE)); + getLabel().setAlignment(SWT.CENTER); + getLabel().setFont(new Font(null, "Segoe UI", 15, SWT.BOLD)); + getLabel().setLayoutData( + new GridData(SWT.FILL, SWT.TOP, true, false, 1, 1)); + getLabel().setText("New Label"); + + styledText = (new StyledText(composite_1, SWT.BORDER | SWT.WRAP)); + styledText.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); + styledText.setEditable(false); + + TabItem tbtmInfo = new TabItem(tabFolder, SWT.NONE); + tbtmInfo.setText("Info"); + + Composite composite_3 = new Composite(tabFolder, SWT.NONE); + tbtmInfo.setControl(composite_3); + composite_3.setLayout(new FillLayout(SWT.HORIZONTAL)); + + info =new Text(composite_3, SWT.BORDER | SWT.V_SCROLL | SWT.MULTI); + createContents(); + } + + protected void startZookeeper() { + + IContainer singleton = null; + try { + singleton = ContainerFactory.getDefault().createContainer( + ZooDiscoveryContainerInstantiator.NAME); + } catch (ContainerCreateException e1) { + } + + if (singleton.getConnectedID() != null) + singleton.disconnect(); + + try { + singleton.connect( + singleton.getConnectNamespace().createInstance( + new String[] { "zoodiscovery.flavor.centralized=" + + getServers().getText() }), null); + } catch (Exception e) { + getLabel().setText(e.getLocalizedMessage()); + getStyledText().setText(e.getCause().toString()); + } + } + + /** + * Create contents of the shell. + */ + protected void createContents() { + setText("ECF Zookeeper Quote Service Consumer"); + setSize(450, 381); + + dispatcher = new Dispatcher() { + + @Override + public void setValue(int value) { + if (isSoundRequired()) + clipper.playClip(getActiveSoundfile(), 0); + + getGilloscope().setValues(OSGilloscope.HEARTBEAT); + + } + + public OSGilloscope getGilloscope() { + return gilloscope; + }; + + @Override + public boolean isServiceActive() { + return true; + } + }; + + dispatcher.dispatch(); + + } + + @Override + protected void checkSubclass() { + // Disable the check that prevents subclassing of SWT components + } + + public Label getLabel() { + return label; + } + + public StyledText getStyledText() { + return styledText; + } + + public Text getServers() { + return servers; + } + + public Dispatcher getDispatcher() { + return dispatcher; + } + + public Text getInfo() { + return info; + } +} diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Dispatcher.java b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Dispatcher.java new file mode 100644 index 000000000..f2fa37e58 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/src/org/eclipse/ecf/examples/remoteservices/quotes/consumer/Dispatcher.java @@ -0,0 +1,180 @@ +package org.eclipse.ecf.examples.remoteservices.quotes.consumer; + +import java.io.ByteArrayInputStream; +import java.io.File; + +import javax.sound.sampled.AudioSystem; +import javax.sound.sampled.Clip; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.graphics.Image; + +import com.remainsoftware.osgilloscope.OSGilloscope; + +/** + * Dispatch an osgilloscope. + * + */ +public abstract class Dispatcher { + + /** + * Play a sound clip. + * + */ + public class Clipper { + Clip clip = null; + String oldFile = ""; + + public void playClip(String file, int loop) { + try { + + if (clip == null || !file.equals(oldFile)) { + oldFile = file; + clip = AudioSystem.getClip(); + clip.open(AudioSystem.getAudioInputStream(new File(file))); + } + if (clip.isActive()) + return; + // clip.stop(); << Alternative + + clip.setFramePosition(0); + clip.loop(loop); + + } catch (Exception e) { + } + } + } + + public abstract void setValue(int value); + + Clipper clipper = new Clipper(); + /** + * Contains a small image that can serve as the background of the image. + */ + final public static int[] BACKGROUND_MONITOR = new int[] { 255, 216, 255, 224, 0, 16, 74, 70, 73, 70, 0, 1, 1, 1, + 0, 72, 0, 72, 0, 0, 255, 254, 0, 19, 67, 114, 101, 97, 116, 101, 100, 32, 119, 105, 116, 104, 32, 71, 73, + 77, 80, 255, 219, 0, 67, 0, 5, 3, 4, 4, 4, 3, 5, 4, 4, 4, 5, 5, 5, 6, 7, 12, 8, 7, 7, 7, 7, 15, 11, 11, 9, + 12, 17, 15, 18, 18, 17, 15, 17, 17, 19, 22, 28, 23, 19, 20, 26, 21, 17, 17, 24, 33, 24, 26, 29, 29, 31, 31, + 31, 19, 23, 34, 36, 34, 30, 36, 28, 30, 31, 30, 255, 219, 0, 67, 1, 5, 5, 5, 7, 6, 7, 14, 8, 8, 14, 30, 20, + 17, 20, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 255, + 192, 0, 17, 8, 0, 20, 0, 20, 3, 1, 34, 0, 2, 17, 1, 3, 17, 1, 255, 196, 0, 23, 0, 1, 1, 1, 1, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 7, 255, 196, 0, 34, 16, 0, 2, 2, 0, 5, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 3, 4, 2, 20, 33, 52, 84, 17, 115, 145, 178, 209, 97, 255, 196, 0, 23, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2, 0, 1, 3, 255, 196, 0, 27, 17, 0, 2, 2, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, + 17, 33, 49, 81, 18, 255, 218, 0, 12, 3, 1, 0, 2, 17, 3, 17, 0, 63, 0, 225, 37, 87, 118, 245, 59, 79, 217, + 140, 212, 60, 24, 60, 226, 250, 83, 110, 196, 74, 10, 205, 211, 133, 245, 141, 180, 155, 122, 106, 255, 0, + 78, 77, 187, 88, 4, 164, 237, 96, 204, 5, 89, 168, 120, 48, 121, 197, 244, 10, 223, 5, 233, 240, 148, 170, + 238, 222, 167, 105, 251, 48, 9, 237, 20, 182, 137, 64, 6, 140, 255, 217 }; + private Image image; + + /** + * @wbp.parser.entryPoint + */ + public void dispatch() { + + init(); + + Runnable runnable = new Runnable() { + + public void run() { + + getGilloscope().setPercentage(isPercentage()); + getGilloscope().setTailSize(isTailSizeMax() ? OSGilloscope.TAILSIZE_MAX : getTailSize()); + getGilloscope().setSteady(isSteady(), getSteadyPosition()); + getGilloscope().setFade(getFade()); + getGilloscope().setTailFade(getTailFade()); + getGilloscope().setConnect(mustConnect()); + getGilloscope().setBackgroundImage(getBackgroundImage()); + if (isServiceActive()) + getGilloscope().setForeground(getGilloscope().getDisplay().getSystemColor(SWT.COLOR_GREEN)); + else + getGilloscope().setForeground(getGilloscope().getDisplay().getSystemColor(SWT.COLOR_RED)); + getGilloscope().redraw(); + + getGilloscope().getDisplay().timerExec(getDelayloop(), this); + } + }; + getGilloscope().getDisplay().timerExec(getDelayloop(), runnable); + + } + + public Image getBackgroundImage() { + + if (image == null) { + byte[] bytes = new byte[BACKGROUND_MONITOR.length]; + for (int i = 0; i < BACKGROUND_MONITOR.length; i++) + bytes[i] = (byte) BACKGROUND_MONITOR[i]; + image = new Image(null, new ByteArrayInputStream(bytes)); + } + return image; + } + + public void init() { + } + + public int getPulse() { + return 40; + } + + public String getActiveSoundfile() { + return ""; + } + + public int getDelayloop() { + return 80; + } + + public abstract OSGilloscope getGilloscope(); + + public String getInactiveSoundfile() { + return ""; + } + + public boolean isTailSizeMax() { + return true; + } + + public boolean isPercentage() { + return true; + } + + public boolean isServiceActive() { + return false; + } + + public boolean isSoundRequired() { + return false; + } + + public int getTailSize() { + return OSGilloscope.TAILSIZE_MAX; + } + + public boolean isSteady() { + return false; + } + + public int getSteadyPosition() { + return 200; + } + + public boolean getFade() { + return true; + + } + + public int getTailFade() { + return 25; + } + + public boolean mustConnect() { + return false; + } + + @Override + protected void finalize() throws Throwable { + if (image != null && !image.isDisposed()) + image.dispose(); + } +} diff --git a/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/zooquotesConsumerGeneric.product b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/zooquotesConsumerGeneric.product new file mode 100644 index 000000000..f48da2fb4 --- /dev/null +++ b/examples/bundles/org.eclipse.ecf.examples.remoteservices.quotes.consumer/zooquotesConsumerGeneric.product @@ -0,0 +1,95 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?pde version="3.5"?> + +<product name="Zookeeper Discoverable Quotes Service" uid="org.eclipse.ecf.examples.remoteservices.quotes.consumer.product" id="org.eclipse.ecf.examples.remoteservices.quotes.consumer.zooquotesgenericconsumer" application="org.eclipse.ecf.examples.remoteservices.quotes.consumer.id1" version="1.0.0" useFeatures="false" includeLaunchers="true"> + + + <configIni use="default"> + </configIni> + + <launcherArgs> + <programArgs>-containerType ecf.generic.client</programArgs> + <vmArgs>-Dzoodiscovery.flavor=zoodiscovery.flavor.centralized=yazafatutu.com:2181</vmArgs> + <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac> + </launcherArgs> + + <windowImages/> + + + <launcher name="zooQuotes"> + <solaris/> + <win useIco="false"> + <bmp + winSmallHigh="/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes.bmp" + winMediumHigh="/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes32x32x32.bmp" + winLargeHigh="/org.eclipse.ecf.examples.remoteservices.quotes.consumer/images/quotes48x48x32.bmp"/> + </win> + </launcher> + + + <vm> + </vm> + + + <plugins> + <plugin id="org.apache.log4j"/> + <plugin id="org.apache.zookeeper"/> + <plugin id="org.eclipse.core.contenttype"/> + <plugin id="org.eclipse.core.jobs"/> + <plugin id="org.eclipse.core.runtime"/> + <plugin id="org.eclipse.ecf"/> + <plugin id="org.eclipse.ecf.discovery"/> + <plugin id="org.eclipse.ecf.examples.remoteservices.quotes.consumer"/> + <plugin id="org.eclipse.ecf.identity"/> + <plugin id="org.eclipse.ecf.osgi.services.discovery"/> + <plugin id="org.eclipse.ecf.osgi.services.distribution"/> + <plugin id="org.eclipse.ecf.provider"/> + <plugin id="org.eclipse.ecf.provider.remoteservice"/> + <plugin id="org.eclipse.ecf.provider.zookeeper"/> + <plugin id="org.eclipse.ecf.remoteservice"/> + <plugin id="org.eclipse.ecf.services.quotes"/> + <plugin id="org.eclipse.ecf.sharedobject"/> + <plugin id="org.eclipse.equinox.app"/> + <plugin id="org.eclipse.equinox.common"/> + <plugin id="org.eclipse.equinox.concurrent"/> + <plugin id="org.eclipse.equinox.ds"/> + <plugin id="org.eclipse.equinox.preferences"/> + <plugin id="org.eclipse.equinox.registry"/> + <plugin id="org.eclipse.equinox.simpleconfigurator"/> + <plugin id="org.eclipse.equinox.util"/> + <plugin id="org.eclipse.osgi"/> + <plugin id="org.eclipse.osgi.services"/> + <plugin id="org.eclipse.swt"/> + <plugin id="org.eclipse.swt.carbon.macosx" fragment="true"/> + <plugin id="org.eclipse.swt.cocoa.macosx" fragment="true"/> + <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.ppc" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.ppc64" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.s390" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.s390x" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.solaris.sparc" fragment="true"/> + <plugin id="org.eclipse.swt.gtk.solaris.x86" fragment="true"/> + <plugin id="org.eclipse.swt.motif.aix.ppc" fragment="true"/> + <plugin id="org.eclipse.swt.motif.hpux.ia64_32" fragment="true"/> + <plugin id="org.eclipse.swt.motif.linux.x86" fragment="true"/> + <plugin id="org.eclipse.swt.motif.solaris.sparc" fragment="true"/> + <plugin id="org.eclipse.swt.photon.qnx.x86" fragment="true"/> + <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/> + <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/> + </plugins> + + <configurations> + <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="1" /> + <plugin id="org.eclipse.ecf.discovery" autoStart="true" startLevel="3" /> + <plugin id="org.eclipse.ecf.osgi.services.distribution" autoStart="true" startLevel="2" /> + <plugin id="org.eclipse.ecf.remoteservice" autoStart="true" startLevel="2" /> + <plugin id="org.eclipse.ecf.sharedobject" autoStart="true" startLevel="1" /> + <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="1" /> + <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" /> + <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" /> + <plugin id="org.eclipse.osgi.services" autoStart="true" startLevel="2" /> + </configurations> + +</product> |