Hi,

On 6/14/07, Daniel Labella de la Cruz <[EMAIL PROTECTED]> wrote:
> This is my first time posting on a list and I don't know the procedures to
> post a question....if I make a mistake....sorry....

Nope, this is fine.

> I was reading about, and I think that the Filters can do that. But the
> "problem" is that I want that every file with extended attributes have its
> attributes as searchable properties...

Since extended attributes are file system-specific, I think the right
place to add code for this would be in the file system backend
(FileSystemQueryable) rather than filters.

> Mono.Unix.Native.Syscall.listxattr(info.FullName,out
> XProperties);

There is already a class in Beagle for working with extended
attributes: Beagle.Util.ExtendedAttribute.  You should use that
instead, and add anything to it that you need.  (For example, I don't
think there is code to list them.)

> AddProperty(Beagle.Property.NewKeyword("dc:"+PropertyName[PropertyName.Length-1
> ] , XValue.Trim('\0')));

"dc" is specifically the "Dublin Core" namespace; see dublincore.org
for more info.

You should probably name it something like "xattr:" + the property name.

> With this I can see the extended properties with beagle-extract-content, but
> I can't search by property:value...

If you want generic text searches to match, you need to use the
Beagle.Property.New() method instead of NewKeyword().  Keywords are
for exact matches.

If you want to add a special keyword in the search language (like how
we have "album:foo" in the search match to "dc:album" = "foo"), then
you need to use the PropertyKeyword attributes.  Look at other filter
or backend instances to see how to declare those.

Joe
_______________________________________________
Dashboard-hackers mailing list
Dashboard-hackers@gnome.org
http://mail.gnome.org/mailman/listinfo/dashboard-hackers

Reply via email to