Andrea Cosentino created CAMEL-23580:
----------------------------------------

             Summary: camel-openstack - align Exchange header constant names 
with Camel naming convention
                 Key: CAMEL-23580
                 URL: https://issues.apache.org/jira/browse/CAMEL-23580
             Project: Camel
          Issue Type: Improvement
          Components: camel-openstack
            Reporter: Andrea Cosentino
            Assignee: Andrea Cosentino
             Fix For: 4.21.0


All OpenStack sibling components ({{camel-openstack-keystone}}, 
{{camel-openstack-nova}}, {{camel-openstack-cinder}}, 
{{camel-openstack-glance}}, {{camel-openstack-neutron}}, 
{{camel-openstack-swift}}) inherit from {{OpenstackConstants}} and define 
resource-identifier headers with non-prefixed string values:

* {{OperationProducer}} reads {{OPERATION = "operation"}} and {{ID = "ID"}} for 
dispatch and target selection (create / get / getAll / update / delete)
* keystone: {{PASSWORD}}, {{USER_ID}}, {{GROUP_ID}}, {{DOMAIN_ID}}, 
{{PARENT_ID}}, {{EMAIL}}
* nova: {{IMAGE_ID}}, {{FLAVOR_ID}}, {{KEYPAIR_NAME}}, {{NETWORK}}, 
{{ADMIN_PASSWORD = "AdminPassword"}}, {{ACTION = "action"}}, {{RAM}}, {{VCPU}}, 
{{DISK}}
* cinder: {{VOLUME_ID}}, {{SNAPSHOT_ID}}, {{IMAGE_REF}}, {{VOLUME_TYPE}}, 
{{SIZE}}, {{IS_BOOTABLE}}, {{FORCE}}
* glance: {{DISK_FORMAT}}, {{CONTAINER_FORMAT}}, {{OWNER}}, {{IS_PUBLIC}}, 
{{MIN_RAM}}, {{MIN_DISK}}, {{CHECKSUM}}
* neutron: {{NETWORK_ID}}, {{SUBNET_ID}}, {{PORT_ID}}, {{ROUTER_ID}}, 
{{TENANT_ID}}, {{DEVICE_ID}}, {{SEGMENT_ID}}, {{MAC_ADDRESS}}, {{CIDR}}, 
{{GATEWAY}}, {{IP_VERSION}}, ...
* swift: {{CONTAINER_NAME}}, {{OBJECT_NAME}}, {{PATH}}, {{LIMIT}}, {{MARKER}}, 
{{END_MARKER}}, {{DELIMITER}}

Recommend a single coordinated rename across the 
{{components/camel-openstack/*}} sub-module to {{CamelOpenstack<Module><Name>}} 
(or {{CamelOpenstack<Name>}} for common). Keep Java field names; update 
consumers, producers, and tests.

h3. Fix shape

Rename the *string value* of each producer-read header constant to 
{{Camel<Component><Name>}}; keep the Java field name unchanged so routes that 
reference the constants symbolically continue to compile and run. Update tests 
that use the literal string values; regenerate component catalog JSON and docs; 
add an upgrade-guide entry in {{camel-4x-upgrade-guide-4_21.adoc}} (and 
matching 4_18 / 4_14 for backports where the component existed in those 
branches).

h3. References

* Tracker: CAMEL-23577
* Precedent (rename pattern): CAMEL-23526 (camel-cxf)
* Alternative pattern (HeaderFilterStrategy approach): CAMEL-23532 
(camel-vertx-websocket / camel-atmosphere-websocket / camel-iggy)




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to