Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No way to pass-through ExifTool raw "no args" output. #5

Open
ghost opened this issue Nov 5, 2011 · 2 comments
Open

No way to pass-through ExifTool raw "no args" output. #5

ghost opened this issue Nov 5, 2011 · 2 comments

Comments

@ghost
Copy link

ghost commented Nov 5, 2011

A user emailed asking if there was a way to use all this launching infrastructure to get ExifTool's raw no-args output which is a full list of metadata found in an image.

Adding a List getAllMeta() method is a possibility, but a sloppy solution to a shortcoming that the user should be able to extend and solve themself if the base implementation was more flexible.

This also points to the problem of having enum-defined Tags. It makes usage super nice and intuitive, but extension impossible.

Need to think about this more.

@joepetoun
Copy link

I agree about this point.
It should be fine to get all the metadatas or to extend the current Tag enum to handle all metadatas (as Copyright, F Number, creator, keywords or other...).

Can you add it to the next release ?
Thanks.

@ghost
Copy link
Author

ghost commented Jan 8, 2013

Yes, the next version will be 2.0 and it will break 1.0 backward compatibility. While I love the Enum-based design for ease of use, the immediate limitations and lack of easy extensibility for users to immediately take advantage of is a big problem.

While I wanted to avoid it, I think I'll have to go with a Class-per-Tag based implementation. The classes will be extremely light weight and simple, but at least they will allow total customization and extensibility for anyone wanting to use the class. Naturally the library will ship with a handful of the most popular Metadata tags already implemented and clear information on how to add more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant