Skip to content

Instantly share code, notes, and snippets.

@chumpa
Last active September 14, 2023 09:18
Show Gist options
  • Save chumpa/e9a2605eda6f359e94b433f3a9975f9e to your computer and use it in GitHub Desktop.
Save chumpa/e9a2605eda6f359e94b433f3a9975f9e to your computer and use it in GitHub Desktop.
CPI получаем версию потока
import com.sap.gateway.ip.core.customdev.util.Message as CpiMsg
import org.apache.camel.*
import org.osgi.framework.*
CpiMsg processData(CpiMsg msg) {
CamelContext ctx = msg.exchange.context
BundleContext octx = FrameworkUtil.getBundle(msg.exchange.getClass()).bundleContext
Bundle cb = octx.getBundle()
Bundle b = octx.getBundles().find{it.symbolicName == ctx.name}
String log = """CamelContext = $ctx
.name = ${ctx.getName()}
BundleContext = $octx
CoreBundle = $cb
.version = ${cb.version}
ThisBundle = $b
.version = ${b.version}
.symbolicName = ${b.symbolicName}
.long name = ${b.headers.get('Bundle-Name')}
.deployedby = ${b.headers.get('SAP-DeployedBy')}
.headers = ${b.headers}
"""
msg.properties.ctx = ctx
msg.properties.octx = octx
msg.setBody(log)
return msg
}
/*
CamelContext = CamelContext(testCamelContext_ZZZZ)
.name = testCamelContext_ZZZZ
BundleContext = org.apache.felix.framework.BundleContextImpl@2263abb1
CoreBundle = org.apache.camel.camel-core [749]
.version = 2.24.2.sap-32
ThisBundle = testCamelContext_ZZZZ [998]
.version = 1.0.1
.symbolicName = testCamelContext_ZZZZ
.long name = testCamelContext ZZZZ
.deployedby = S0020000000
.headers = {Bundle-ClassPath=.,/mapping/MM_123.jar, Bundle-ManifestVersion=2, Bundle-Name=testCamelContext ZZZZ, Bundle-SymbolicName=testCamelContext_ZZZZ, Bundle-Version=1.0.1, Import-Package= com.sap.it.rt.adapter.http.component, org.mozilla.javascript, org.codehaus.groovy.reflection, org.codehaus.groovy.runtime.callsite, org.codehaus.groovy.runtime.typehandling, org.codehaus.groovy.runtime, groovy.lang, org.codehaus.groovy.jsr223, com.sap.gateway.ip.core.customdev.util, com.sap.gateway.ip.core.customdev.logging, com.sap.gateway.ip.core.customdev.processor, com.sap.esb.datastore.wrapper, com.sap.esb.monitoring.cxf.response.log, com.sap.esb.monitoring.cxf.runtime.feature, com.sap.it.op.agent.trace.cxf, com.sap.esb.size.limiter, com.sap.esb.camel.webservice.endpoint.configurer, com.sap.esb.webservice.security.crypto.api, com.sap.esb.webservice.policy.alternative.selector, org.apache.cxf.ws.security.wss4j, org.apache.wss4j.common.crypto, javax.security.auth.callback, com.sap.it.iflow.model.runtime, com.sap.it.iflow.model, com.sap.sod.utils.idoc.soap.interceptors, com.sap.sod.utils.idoc.soap.processors, com.sap.sod.utils.idoc.soap, com.sap.sod.utils.soap.processors, com.sap.sod.utils.soap, com.sap.sod.utils.encoding.processors, com.sap.sod.utils.cxf.interceptors, com.sap.it.rt.scc.proxy, com.sap.esb.camel.jdbc.inprogress.repository, com.sap.esb.camel.jdbc.idempotency.repository, com.sap.esb.camel.webservice.cxfbinding, com.sap.esb.camel.mpl.access, com.sap.esb.camel.eip.splitter, com.sap.esb.camel.xmljson, com.sap.it.op.ed, com.sap.it.op.agent.ed.plugins.camel.api, com.sap.esb.webservice.authorization.supplier.api, org.apache.cxf.interceptor.security, net.sf.saxon.xpath, net.sf.saxon,com.sap.esb.application.services.cxf.interceptor,com.sap.esb.security,com.sap.it.op.agent.api,com.sap.it.op.agent.collector.camel,com.sap.it.op.agent.collector.cxf,com.sap.it.op.agent.mpl,javax.jms,javax.jws,javax.wsdl,javax.xml.bind.annotation,javax.xml.namespace,javax.xml.ws,org.apache.camel;version="2.8",org.apache.camel.builder;version="2.8",org.apache.camel.builder.xml;version="2.8",org.apache.camel.component.cxf,org.apache.camel.model;version="2.8",org.apache.camel.processor;version="2.8",org.apache.camel.processor.aggregate;version="2.8",org.apache.camel.spring.spi;version="2.8",org.apache.commons.logging,org.apache.cxf.binding,org.apache.cxf.binding.soap,org.apache.cxf.binding.soap.spring,org.apache.cxf.bus,org.apache.cxf.bus.resource,org.apache.cxf.bus.spring,org.apache.cxf.buslifecycle,org.apache.cxf.catalog,org.apache.cxf.configuration.jsse;version="2.5",org.apache.cxf.configuration.spring,org.apache.cxf.endpoint,org.apache.cxf.headers,org.apache.cxf.interceptor,org.apache.cxf.management.counters;version="2.5",org.apache.cxf.message,org.apache.cxf.phase,org.apache.cxf.resource,org.apache.cxf.service.factory,org.apache.cxf.service.model,org.apache.cxf.transport,org.apache.cxf.transport.common.gzip,org.apache.cxf.transport.http,org.apache.cxf.transport.http.policy,org.apache.cxf.workqueue,org.apache.cxf.ws.rm.persistence,org.apache.cxf.wsdl11,org.osgi.framework;version="1.6.0",org.slf4j;version="1.6",org.springframework.beans.factory.config;version="3.0",com.sap.esb.camel.security.cms,org.apache.camel.spi,com.sap.esb.webservice.audit.log,com.sap.esb.camel.endpoint.configurator.api,com.sap.esb.camel.jdbc.idempotency.reorg,javax.sql,org.apache.camel.processor.idempotent.jdbc,org.osgi.service.blueprint;version="[1.0.0,2.0.0)", Import-Service= javax.sql.DataSource;multiple:=false;filter="(name=wrapper)", com.sap.esb.camel.endpoint.configurator.api.EndpointConfigurator;multiple:=false;filter="(endpointType=SFTP)",com.sap.esb.webservice.audit.log.AuditLogger,com.sap.esb.security.KeyManagerFactory;multiple:=false,com.sap.esb.security.TrustManagerFactory;multiple:=false,javax.sql.DataSource;multiple:=false;filter="(dataSourceName=default)",org.apache.cxf.ws.rm.persistence.RMStore;multiple:=false,com.sap.esb.camel.security.cms.SignatureSplitter;multiple:=false, Manifest-Version=1.0, Origin-Bundle-Name=testCamelContext ZZZZ, Origin-Bundle-SymbolicName=testCamelContext_ZZZZ, Require-Capability=sap-HTTPS;resolution:=optional, SAP-ArtifactId=4afdff6d-0bbc-4d98-9ade-9c3fa381e348, SAP-BundleType=IntegrationFlow, SAP-DeployedBy=S00200000000, SAP-NodeType=IFLMAP, SAP-RuntimeProfile=iflmap, SAP-StartOrder=150, WorkspaceProfile=iflmap}
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment