base64

package
v0.13.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 10, 2025 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DecodeProcessor added in v0.13.4

type DecodeProcessor struct {
	sdk.UnimplementedProcessor
	// contains filtered or unexported fields
}
Example
p := NewDecodeProcessor(log.Nop())
exampleutil.RunExample(p, exampleutil.Example{
	Summary: "Decode a base64 encoded string",
	Description: `This example decodes the base64 encoded string stored in
` + "`.Payload.After`" + `. Note that the result is a string, so if you want to
further process the result (e.g. parse the string as JSON), you need to chain
other processors (e.g. [` + "`json.decode`" + `](/docs/using/processors/builtin/json.decode)).`,
	Config: config.Config{
		"field": ".Payload.After.foo",
	},
	Have: opencdc.Record{
		Position:  opencdc.Position("test-position"),
		Operation: opencdc.OperationCreate,
		Metadata:  map[string]string{"key1": "val1"},
		Key:       opencdc.RawData("test-key"),
		Payload: opencdc.Change{
			After: opencdc.StructuredData{
				"foo": "YmFy",
			},
		},
	},
	Want: sdk.SingleRecord{
		Position:  opencdc.Position("test-position"),
		Operation: opencdc.OperationCreate,
		Metadata:  map[string]string{"key1": "val1"},
		Key:       opencdc.RawData("test-key"),
		Payload: opencdc.Change{
			After: opencdc.StructuredData{
				"foo": "bar",
			},
		},
	},
})
Output:

processor transformed record:
--- before
+++ after
@@ -1,14 +1,14 @@
 {
   "position": "dGVzdC1wb3NpdGlvbg==",
   "operation": "create",
   "metadata": {
     "key1": "val1"
   },
   "key": "test-key",
   "payload": {
     "before": null,
     "after": {
-      "foo": "YmFy"
+      "foo": "bar"
     }
   }
 }

func NewDecodeProcessor

func NewDecodeProcessor(log.CtxLogger) *DecodeProcessor

func (*DecodeProcessor) Configure added in v0.13.4

func (p *DecodeProcessor) Configure(ctx context.Context, c config.Config) error

func (*DecodeProcessor) Process added in v0.13.4

func (p *DecodeProcessor) Process(ctx context.Context, records []opencdc.Record) []sdk.ProcessedRecord

func (*DecodeProcessor) Specification added in v0.13.4

func (p *DecodeProcessor) Specification() (sdk.Specification, error)

type EncodeProcessor added in v0.13.4

type EncodeProcessor struct {
	sdk.UnimplementedProcessor
	// contains filtered or unexported fields
}
Example (RawData)
p := NewEncodeProcessor(log.Nop())
exampleutil.RunExample(p, exampleutil.Example{
	Summary: "Encode record key to base64",
	Description: `TThis example takes a record containing raw data in
` + "`.Key`" + ` and converts it into a base64 encoded string.`,
	Config: config.Config{
		"field": ".Key",
	},
	Have: opencdc.Record{
		Position:  opencdc.Position("test-position"),
		Operation: opencdc.OperationCreate,
		Metadata:  map[string]string{"key1": "val1"},
		Key:       opencdc.RawData("test-key"),
		Payload: opencdc.Change{
			After: opencdc.StructuredData{
				"foo": "bar",
			},
		},
	},
	Want: sdk.SingleRecord{
		Position:  opencdc.Position("test-position"),
		Operation: opencdc.OperationCreate,
		Metadata:  map[string]string{"key1": "val1"},
		Key:       opencdc.RawData("dGVzdC1rZXk="),
		Payload: opencdc.Change{
			After: opencdc.StructuredData{
				"foo": "bar",
			},
		},
	},
})
Output:

processor transformed record:
--- before
+++ after
@@ -1,14 +1,14 @@
 {
   "position": "dGVzdC1wb3NpdGlvbg==",
   "operation": "create",
   "metadata": {
     "key1": "val1"
   },
-  "key": "test-key",
+  "key": "dGVzdC1rZXk=",
   "payload": {
     "before": null,
     "after": {
       "foo": "bar"
     }
   }
 }
Example (StringField)
p := NewEncodeProcessor(log.Nop())
exampleutil.RunExample(p, exampleutil.Example{
	Summary: "Encode nested value to base64",
	Description: `This example takes a record containing a string in
` + "`.Payload.Before.foo`" + ` and converts it into a base64 encoded string.`,
	Config: config.Config{
		"field": ".Payload.After.foo",
	},
	Have: opencdc.Record{
		Position:  opencdc.Position("test-position"),
		Operation: opencdc.OperationCreate,
		Metadata:  map[string]string{"key1": "val1"},
		Key:       opencdc.RawData("test-key"),
		Payload: opencdc.Change{
			After: opencdc.StructuredData{
				"foo": "bar",
			},
		},
	},
	Want: sdk.SingleRecord{
		Position:  opencdc.Position("test-position"),
		Operation: opencdc.OperationCreate,
		Metadata:  map[string]string{"key1": "val1"},
		Key:       opencdc.RawData("test-key"),
		Payload: opencdc.Change{
			After: opencdc.StructuredData{
				"foo": "YmFy",
			},
		},
	},
})
Output:

processor transformed record:
--- before
+++ after
@@ -1,14 +1,14 @@
 {
   "position": "dGVzdC1wb3NpdGlvbg==",
   "operation": "create",
   "metadata": {
     "key1": "val1"
   },
   "key": "test-key",
   "payload": {
     "before": null,
     "after": {
-      "foo": "bar"
+      "foo": "YmFy"
     }
   }
 }

func NewEncodeProcessor

func NewEncodeProcessor(log.CtxLogger) *EncodeProcessor

func (*EncodeProcessor) Configure added in v0.13.4

func (p *EncodeProcessor) Configure(ctx context.Context, c config.Config) error

func (*EncodeProcessor) Process added in v0.13.4

func (p *EncodeProcessor) Process(ctx context.Context, records []opencdc.Record) []sdk.ProcessedRecord

func (*EncodeProcessor) Specification added in v0.13.4

func (p *EncodeProcessor) Specification() (sdk.Specification, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL